我正在查找一些代码技巧。我发现一个我了解了基础知识但我不明白它为什么存在的原因。它与 while 循环中的字符串指针有关。通常我不处理字符串,因为我主要在嵌入式系统......小工具上工作。我需要理解为什么字符串指针在不增加时会结束。
因此,在这段代码中,您传递一个指向字符串的指针,然后在这个 while 循环中,您将计数器增加到指针,以便访问的地址不断增加。我明白了。我的问题是为什么会结束?当 while 循环计算结果为 false 并退出时会发生什么?对我来说,它似乎只是不断增加到 int 的大小,然后再次环绕。
int string_length(char *s)
{
int c = 0;
while(*(s+c))
c++;
return c;
}
最佳答案
while(*(s+c))
当遇到空字符时返回 false 并中断循环
关于c - 使用指针的字符串长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27495366/