gpt4 book ai didi

将字符串复制到另一个 C

转载 作者:行者123 更新时间:2023-12-01 13:19:07 24 4
gpt4 key购买 nike

在 K&R 书中,以下是复制字符串的初始(和正确)函数

void strcpy (char *s, char *t)
{
while ( (*s++ = *t++) != '\0')
;
}

然后据说一个等效的函数是

void strcpy (char *s, char *t)
{
while (*s++ = *t++)
;
}

我不明白 while 循环如何在第二种情况下停止。

谢谢

最佳答案

简单的赋值表达式有两个作用:

1) 将值存储到左侧的左值(这称为“副作用”)

2) 表达式本身的计算结果为一个值 - 分配给该左值的值

while 循环将重复执行,直到其条件计算结果为 0。因此第二个示例中的循环一直运行到将值 0 分配给目标字符串为止。

关于将字符串复制到另一个 C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34514543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com