c语言代码问题,有疑问,求大神解释
问题描述:
这个function的机理是什么?
为什么第二个循环只有分号。。。有什么作用
求大神解释
char *mystery( char *a, char *b )
{
char *c = a;
while ( *c != ’\0’ ) {
c++;
}
while (( *c++ = *b++ ) != ’\0’ )
;
return a;
}
答
第一个循环,c指向了a字符串的末尾;
第二个循环,把b指向的字符串拷贝到a字符串后面了。
答
第二个循环把循环体都写到条件上去了。
答
第二个循环的内容在这里(( *c++ = *b++ ) != ’\0’ )
主要做的就是这个,所以内容为;了