(c语言)拼接字符

想要的效果类似:char*str;for(i;i<100;i++){str+="abcd";}printf("%s",str);请问这样的输出该如何实现啊?str应该分配... 想要的效果类似:
char *str;
for(i;i<100;i++){
str += "abcd";
}
printf("%s",str);
请问这样的输出该如何实现啊? str 应该分配多少空间? += 的功能应该怎样实现?
展开
 我来答
tattackor
2015-09-24 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:897万
展开全部

C语言中拼接字符串可以使用strcat函数。

1、strcat()函数 ,即string catenate的缩写

  原型:extern char *strcat(char *dest,char *src);
  用法:#include <string.h>
  功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。
  说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
  返回指向dest的指针。
2、举例:

  #include <stdio.h>
  #include <string.h>
  int main(){
  char d[20]="字符串1"; //第一个字符串
  char *s=" 字符串2";  //第二个字符串
  strcat(d,s);    //拼接两个字符串,结果保存在第一个字符串当中
  printf("%s",d); //输出拼接结果:"字符串1字符串2"
  getchar();
  return 0;
  }
xoalyg
2012-05-21 · TA获得超过4178个赞
知道大有可为答主
回答量:2356
采纳率:100%
帮助的人:2386万
展开全部
在C环境下,你这样的愿望尚不能实现,但在C++环境下就不成问题了。
简单的办法是用类string。
当然,还可以定义一个类,其数据成员有字符串指针,和该字符串长度。成员函数有必要的构造函数和必须的析构函数,当然还有运算符+,=+等重载函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友78bd6eae2
2012-05-21 · TA获得超过658个赞
知道小有建树答主
回答量:464
采纳率:0%
帮助的人:603万
展开全部
是要把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);
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tommyscf_001
2012-09-23 · TA获得超过107个赞
知道小有建树答主
回答量:146
采纳率:0%
帮助的人:88万
展开全部
你是想在str指向的字符数组元素后面,拼接字符吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式