单选题 下面程序的输出结果是______。
#include<iostream.h>
#include<string.h>
void main()
{
char p1[10],p2[10];
strcpy(p1,"abc");
strcpy(p2,"ABC");
char str[50]="xyz";
strcpy(str+2,strcat(p1,p2));
cout<<str;
}
【正确答案】 C
【答案解析】[解析] 该函数的调用方式是strcpy(字符数组,字符串),其中字符串可以是串常量,也可以是字符数组。函数的功能是将字符串完整地复制到字符数组中,字符数组中原有内容被覆盖。使用该函数时注意:①字符数组必须定义得足够大,以便容纳复制过来的字符串,复制时,连同结束标志/0一起复制;②连接前两个字符串都有结束标志"/0",连接后"符数组"中存储的字符串的结束标志"/0"被舍弃,只在目标串的最后保留一个"/0";③不能用赋值运算符=将一个字符串直接赋值给一个字符数组,只能用strcpy()函数来处理,strcat(字符数组,字符串)的功能是把字符串连接到字符数组中的字符串尾端,并存储于字符数组中,字符数组中原来的结束标志,被字符串的第一个字符覆盖,而字符串在操作中未被修改。