这是什么意思?C编程无条件

这是什么意思?C编程无条件,c,C,及 都一样,这是什么意思?删除条件的作用是什么?条件是检查是否已到达字符串的结尾,而不是超过它。正如您所知,在C语言中,字符串以'\0'字符结尾表达式*s++=*t++仍然有一个结果,该结果可以用作条件。更准确地说,结果将是复制的字符,正如您(应该)知道的,所有非零值都被视为“true”,并且您(应该)知道C中的字符串以零结尾 因此,循环所做的是复制字符,直到到达字符串终止符。它检查字符串的结尾\0NUL,同时将*t的值复制到*s,然后增加两个指针 回答你的第二个问题,考虑这个问题, 两者的区别


都一样,这是什么意思?删除条件的作用是什么?

条件是检查是否已到达字符串的结尾,而不是超过它。正如您所知,在C语言中,字符串以
'\0'
字符结尾表达式
*s++=*t++
仍然有一个结果,该结果可以用作条件。更准确地说,结果将是复制的字符,正如您(应该)知道的,所有非零值都被视为“true”,并且您(应该)知道C中的字符串以零结尾


因此,循环所做的是复制字符,直到到达字符串终止符。

它检查字符串的结尾
\0
NUL
,同时将
*t
的值复制到
*s
,然后增加两个指针

回答你的第二个问题,考虑这个问题,

两者的区别是什么

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

这只是两种编写相同代码的方法。我能想到的唯一区别是代码清晰。第一个更详细,更容易阅读、理解和维护

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