常用字符串函数strcat(s1,s2)可将字符串s2添加到字符串s1的末端,但其使用必须保证字符串s1足够大,以便保存它自己的内容和字符串s2中的内容。请编写一个函数char*append(char*s1,char*s2),其可将字符串s2添加到字符串s

admin2009-01-15  31

问题 常用字符串函数strcat(s1,s2)可将字符串s2添加到字符串s1的末端,但其使用必须保证字符串s1足够大,以便保存它自己的内容和字符串s2中的内容。请编写一个函数char*append(char*s1,char*s2),其可将字符串s2添加到字符串s1的末端,而且不受s1空间大小的限制。请利用常用字符串函数实现。
   常用字符串函数说明:
   strcpy(to,form):将form字符串复制到to字符串;
   strcat(s1,s2):将字符串s2添加到字符串s1的末端,但必须保证字符串s1足够大;
   strlen(s):返回字符串s的长度;
   注意:部分源程序已存在文件test4_2.cpp中。
   请勿修改主函数main和其他函数中的任何内容,仅在函数append的花括号中填写若干语句。
   输出结果如下:
   this is a string.
   文件test4_2.cpp的内容如下:
   #include<iostream.h>
   #include<string.h>
   char *append(char *s1,char *s2)
   {
   }
   void main()
   {   
   char  *s,*s1,*s2;
   s1="this is ";
   s2=",a string.";
   s=append(s1,s2);
   cout<<s<<endl;
   }

选项

答案char *append(char *s1,char *s2) { char *tmp; int length; length=strlen(s1)+strlen(s2); tmp=new char[1ength+1]; strcpy(tmp,s1); strcat(tmp,s2); return tmp; }

解析 本题考查考生利用常用字符串函数编写新函数的能力。strlen返回参数含有的字符个数,  strcpy是字符串复制函数,作用是将第二个参数赋值给第一个参数,strcat是字符串追加函数,可将参数2添加到参数1的末端,new是动态申请空间,返回指向该空间的指针。
转载请注明原文地址:https://jikaoti.com/ti/PMkiFFFM
0

最新回复(0)