c语言中"\0"的意思

main(){
char st[20],*ps;
int i;
printf("input a string:\n");
ps=st;
scanf("%s",ps);
for(i=0;ps[i]!='\0';i++) 这句当中的\0是什么意思?
if(ps[i]=='k')
{
printf("there is a 'k' in the string\n");
break;
}
if(ps[i]=='\0') printf("There is no 'k' in the string\n");
}
最新回答
惜忆

2025-04-28 15:59:06

字符串的最后一位其实都是默认加一个"\0"来表示结束的
for(i=0;ps[i]!='\0';i++) 这句话就是利用循环检测字符串中的字符是否等于\0,假如等于就说明到字符串的结尾了
避讳真心

2025-04-28 20:13:03

'\0'是字符串结束标志,在字符数组中结尾会有一个字符串结束标志,但这个标志并不能输出,
for(i=0;ps[i]!='\0';i++)这里的意思就是如果 ps[i]为字符串结束标志,也就是字符数组ps没有了,就会结束循环.
悠悠变黑脸婆!

2025-04-28 09:17:42

\0在C里是字符串结束的标志,表示字符串到这里结束了。它不能输出,也不需要你输入的,是系统自动加上的。比如字符串“a”实际上包含了2个字符:'a'和'\0'.
风间白鹿

2025-04-28 21:56:57

其实就是 char型的0值
柠萌妹子

2025-04-28 12:41:33

在内存中用来标记字符串尾的