问题 填空题

下面的函数strcat(str1,str2)实现将字符串str2拼接到字符串str1后面的功能。请填空使之完整。 char*strcat(str1,str2) char*str1,*str2; { char*t=str1; while( 【16】 )str1++; while( 【17】 ); return(t);}

答案

参考答案:【16】*str1 或 *str1!=’\0’ 或 *str1!=0 或 *str1!=NUL

解析:【17】*str1++=*str2++ 或 *str1++=*str2,*str2++[评析] 函数strcat(str1,str2)实现将字符串str2连接到字符串str1后面,所以首先要找到字符串str1的串尾,根据C语言的语法规定,一个串的串尾—定是—个隐含字符“\0”,而在程序中,对字符串中字符的访问是通过两个指针变量来完成的,因此要找到字符串str1的串尾,要判断:str1是否为“\0”,要找到字符串str2的串尾,要判断*str2是否为“\0”,程序中必须以使字符串中字符逐—顺序体现,所以在题中我们应填写“*str1”和“*str1++=*str2++”。

单项选择题
名词解释