int Find_Low_Latter(const char * p)
{
int num = 0;
while(*p != '\0')
{
if(*p>= 'a' && *p <= 'z')
{
num++;
}
p++;
}
return num;
}
你好,while(*p != '\0')这个代码我可以这样子理解吗——p读取不到‘\0’,p就会一直(p)++。
该回答引用GPTᴼᴾᴱᴺᴬᴵ
是的,你的理解是正确的。在该代码中,while 循环条件为 *p != '\0',意思是只要 p 没有读到字符串的结束符 '\0',就会一直执行循环体中的代码,也就是 p 指针会一直后移(p++),直到找到字符串的结束符为止。
这个函数大致的作用就是计算字符串当中小写字母a到z的个数,while循环条件确切的说是读取到字符串的结尾。
是的,会一直继续,直到数组越界,所以说代码中应该加上限制判断,或者传递数组的大小作为参数,防止越界