请问while(*s!='\0')是什么意思

请问在这个程序里while(s!='\0')什么意思 #include<stdio.h> void fun(chars,int&a,int&b) { while(*s!='\0') { if(*s>='A'&&*s<='Z') a++; if(*s>='a'&&*s<='z') b++; s++; } } main() { char s[100]; int upper=0,lower=0; printf("\nPlease a string:"); gets(s); fun(s,upper,lower); printf("\n upper=%d lower=%d\n",upper,lower); }

while(*s!='\0')意思是,如果s不是字符串结尾就继续循环,否则结束循环
'\0'是字符串最后一个字符,表示字符串结尾
*s是取数组中的元素,*s!='\0'是用来判断字符串是否到结尾了。
while(*s != '\0')的意思是,如果没到字符串尾就继续执行循环。
因为while循环中,有s++这句话,这句话的作用就相当于s指针后移,指向数组的下一个元素,所以能够实现对字符数组的遍历

当字符串未到结束,字符串最后的一位是以/0结尾

当字符串未到结束,字符串最后的一位是以/0结尾

字符串结束标志为'\0',while(s!='\0') 判断是否是字符串的尾部结束符号,如是则结束循环。