【发布时间】:2013-08-02 02:00:18
【问题描述】:
考虑以下代码:
void concatenate(char *s1, char *s2){
while(*s1 != '\0'){
s1++;
}
for (; *s1 = *s2; s1++, s2++){
}
}
在上面的函数中,在for循环中,条件*s1 = *s2每次都会被检查。这怎么可能?
它还将s2 指向的值分配给s1 指向的值,然后检查什么以使循环继续?
【问题讨论】: