对于字符串函数 strcat 里面while(*strDest++ = *strSrc++) ; 这条语句是如何跳出语句的~~求大牛解释一下,感觉条件是个赋值语句,怎么样都不会出现false的啊~~本人愚笨求大家指点一下~~谢谢~~ 以下是我写的测试代码~~
#include <stdio.h>
#include <stdlib.h>
#include<assert.h>
char * strcat(char * strDest ,const char * strSrc);
int main()
{
char * strSrc = "world";
char strDest[100] = "hello ";
strcat(strDest,strSrc);
printf("%s", strcat(strDest,strSrc));
return 0;
}
char * strcat(char * strDest ,const char * strSrc){
char * address = strDest;
assert((strDest!=NULL)&&(strSrc != NULL));
while(*strDest) strDest++;
while(*strDest++ = *strSrc++);
return address;
}
时间: 2024-11-06 01:29:09