问题 单项选择题

下面程序的输出结果是(  )。#include   #include   voidmain()   {   charp1[10],p2[10];   strcpy(p1,"abc");   strcpy(p2,"ABC");   charstr[50]="xyz":   strcpy(str+2,strcat(p1,p2));   cout<  }

A.xyzabcABC

B.zabcABC

C.xyabcABC

D.yzabcABC

答案

参考答案:C

解析:【解析】该函数的调用方式是strcpy(字符数组,字符串),其中字符串可以是串常量,也可以是字符数组。函数的功能是将字符串完整地复制到字符数组中,字符数组中原有内容被覆盖。使用该函数时注意:④字符数组必须定义得足够大,以便容纳复制过来的字符串,复制时,连同结束标志\0一起复制;②连接前两个字符串都有结束标志‘\0’,连接后"字符数组"中存储的字符串的结束标志’\0’被舍弃,只在目标串的最后保留一个’\0’;③不能用赋值运算符=将一个字符串直接赋值给一个字符数组,只能用strcpy()函数来处理,strcat(字符数组,字符串)的功能是把字符串连接到字符数组中的字符串尾端,并存储于字符数组中,字符数组中原来的结束标志,被字符串的第一个字符覆盖,而字符串在操作中未被修改。

选择题
单项选择题 A3型题