关闭

解决strcat内存出错问题

1128人阅读 评论(0) 收藏 举报

 

【转】 tianweishuiguo的回答

http://topic.csdn.net/u/20100401/21/edcd5c68-7a33-4581-bc5b-c2b63464c90b.html

char *a="This is ";//这个在常量区分配一个空间,然后a指向此空间
char a[] = "This is"//这个在常量区分配一个空间,然后又在栈上分配一个空间,将常量区的内容复制过来,所以可以修改

【转】解决方法

http://zhidao.baidu.com/question/117087055.html

strcat(t,p)这样写是不对的,t是字符型变量,而strcat的参数要求是字符指针,可以像下面这样写
char *t = new char[100];
strcpy(t,"hello ");
char *p= "word!";
strcat(t,p);
printf("%s/n",t);
delete [] t;
输出hello Word
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:162027次
    • 积分:1598
    • 等级:
    • 排名:千里之外
    • 原创:34篇
    • 转载:8篇
    • 译文:0篇
    • 评论:133条
    最新评论