|
发表于 2004-12-29 22:00:34
|
显示全部楼层
Post by cuigf
gtk编程的一个问题:字符串操作
我想把两个字符串合并为一个字符串。请问有什么好办法?
我编写了一个程序,编译没问题,但一运行就退出。
程序使用了strcat函数。
#include <string.h>
char *str1, *str2;
str1="aaaad";
str2="ddddd";
strcat(str1,str2);
什么问题呢?真是奇怪。
有什么方法把 GString的数据类型转换为 char 或 gchar
str1指向的地址是只读的,往里面写东西肯定会挂掉。
必须确保strcat的目标地址是可写的并且有足够的空间容纳合并后的字符串,比如:
char* str3 = malloc(strlen(str1) + strlen(str2) + 1); // 多加个字节是为了放'\0'
strcpy(str3, str1);
strcat(str3, str2); |
|