C语言中拼接字符串可以使用strcat函数。
1、strcat()函数 ,即string catenate的缩写
原型:extern char *strcat(char *dest,char *src);
用法:#include
功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
2、举例:
#include
#include
int main(){
char d[20]="字符串1"; //第一个字符串
char *s=" 字符串2"; //第二个字符串
strcat(d,s); //拼接两个字符串,结果保存在第一个字符串当中
printf("%s",d); //输出拼接结果:"字符串1字符串2"
getchar();
return 0;
}
在C环境下,你这样的愿望尚不能实现,但在C++环境下就不成问题了。
简单的办法是用类string。
当然,还可以定义一个类,其数据成员有字符串指针,和该字符串长度。成员函数有必要的构造函数和必须的析构函数,当然还有运算符+,=+等重载函数。
是要把100个"abcd"拼接在一起吧。
char *temp="abcd";
char *str;
int i;
str=(char *)malloc(100*strlen(temp)+1);
strcpy(str,temp);
for(i=1;i<100;i++)
strcat(str,temp);
printf("%s",str);
你是想在str指向的字符数组元素后面,拼接字符吗?