|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
字符串判断什么时候用 ‘\0’ 什么时候用 '\n'
字符串是‘\0’和'\n'同时都有吗?有先后顺序吗?
while(scanf("%c",&s1[i]),s1[i]!='\n')
为什么这个是用 '\n' 不可以是 '\0'
我是以字符串一样的形式如 abcdef 这样输入的
for(i=0,j=0;p1[i]!='\0';i++)
而这个则是' \0'
本帖最后由 jackz007 于 2019-12-7 17:38 编辑
'\0' 是法定的字符串结束标志,任何一个字符串的最后那个字符一定是 '\0',就是说,字符串尾部的 '\0' 是判断字符串结束的唯一标志。至于 '\n' 没有什么特别的,和一个普通字符并无任何区别,其位置既可以出现在字符串的开头,也可以出现在中间,当然也可以出现在尾部,其作用不过就是在显示字符串的时候,可以呈现出回车换行的效果。当然,如果是文本文件的话,其每一行内容的最后,都一定带有一个换行符 '\n',这也是分割文本文件的重要标志。当用 fgets() 函数从文本文件读出的时候,每个文本行的末尾字符也一定是 '\n'。当然,字符串结束标志肯定位于 '\n' 之后,否则的话,还怎么叫 "结束标志" 呢!
|
|