00问答网
所有问题
系统在储存字符串常量时,为什么要在结尾添加一个结束标记?
如题所述
举报该问题
推荐答案 2011-01-26
任何一个
字符串
,都要一个结束标记。
如果没结束标记,那么后面的那些没定义的量可能是
乱码
,但是乱码不是结束,系统会认为他是字符串的一部分,那么在输出或者调用的时候,可能会多输出东西甚至出错。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://00.wendadaohang.com/zd/nDITBe0jr.html
其他回答
第1个回答 2011-01-27
与机器字长和有效数字位数有关,38是32位字长+6位有效数字。
字符串常量的\0,只要是“”引起来的字符串常量都是自动生成的,比如用字符数组char s[10]="hello";那么实际上从s[0]-s[5]都有内容的,s[5]就是\0。
相似回答
字符串
的
结束
标志是
???
答:
字符串结束
标志是“\0”。而0则是“\0”的ASCII码表示,是第一个ASCII码,数字0的ASCII码是48,所以写程序要用“/0”
结尾
。字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:
字符串在存储
上类似字符数组,所以它每一位的单个元素都是可以提取的。如s=“abcdefghij”,则s[...
c语言中字符数组最后
一个字符
一定要是'\0'吗?
答:
c语言中字符数组并没有规定最后一个字符为'\0',甚至可以不包含'\0'
,添加
'\0'作为
结束
标志是针对于c语言对字符串的处理而言的,因此,字符数组中最后一个字必须为‘\0’是错误的。C语言中没有字符串类型
,字符串
是
存放在
字符型数组中的。在C语言中,是将字符串作为字符数组来处理的。为了测定字...
...str);书上说最后一位要留给
系统
自动
添加
的''\0'',所以定义%9d...
答:
C规定:在每一个字符串常量的结尾加一个“字符串结束标志”,
以便系统据此判断字符串是否结束
。C规定以字符'\0'作为字符串结束标志。'\0'是一个ASCII为0的字符,不引起任何控制操作,也不是可显示的字符。str[10]中末尾是字符'\0',所以实际上它只能读取9个字符。'a'跟“a”是不同的。“a”中...
c语言中“!0”和“!!0”是
什么
意思?
答:
至于"\0",这是C语言中的特殊字符,代表字符串的
结束标记
。在字符串s[i],当检测到"\0"时,程序知道这是字符串的
结尾
,而不是单个字符。这是因为
字符串常量
与
字符常量在
内存上的区别:字符常量占用一个字节,而字符串常量会额外占用一个字节
存储结束
标志"\0",这样便于程序处理和解析。总结来说,...
大家正在搜
字符常量和字符串常量区别
未结束的字符串常量怎么解决
vbs未结束的字符串常量
字符串的结尾是什么
零结尾字符串是什么意思
判断字符串以什么结尾
js字符串以什么结尾
string字符串以什么结尾
字符串常量占多少字节
相关问题
C语言里实型常量取值范围?字符串常量的字符结束标记
请问函数里定义的字符串常量会随着函数结束时自动消亡吗
字符串常量"china!"在储存时,系统为其分配
未结束的字符串常量怎么解决?
vbs这语句问题在哪为什么总是为结束的字符串常量错误求解决
c语言中‘*’为什么不是合法的字符常量
一个字符串常量在内存中有存储空间的吗 char *p;p=“...
C语言里为什么字符指针变量指向的字符串常量中的内容是不可取代...