我正在阅读 C 编程语言,当它到达 字符指针和函数 (5.5) 时,我遇到了问题。
在5.5中,作者展示了四个版本的strcpy()
。我的问题在于版本 3:
/*strcpy: copy t to s; pointer version 3*/
void strcpy(char *s, char *t)
{
while (*s++ = *t++)
;
}
无法与“\0”进行比较。在这样的条件下,循环的终止又是如何工作的呢?
最佳答案
*s++ = *t++
等价于
(*s++ = *t++) != 0
相当于
(*s++ = *t++) != '\0'
关于c - 关于 TCPL 中的 strcpy(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48000963/