c语言数据输出中为什么会后面多出字符串
展开全部
C语言字符串类型为char *或char []
两者本质上是一样的
例如:
char *x="abc";
x指向'a'
x+1指向'b'
x+2指向'c'
x+3指向'\0'
C语言在输出x时
从x指向的内容开始输出,一直到'\0'为止
用char *定义x,会自动在末尾加上'\0'
但用char []定义x,可能末尾没有'\0'
如:
char x[3]={'a','b','c'};
此时系统输出x+2指向的'c'后
x+3不一定指向'\0'
系统将会继续输出
直到发现'\0'为止
所以C语言用字符串一定要特别小心
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询