有一个
typedef struct person {
char name[20]
char surname[20]
} person_t;
我需要创建一个类似于XXXXXX:YYYYYY
函数的字符串,如
char* personToString(person_t *p)
. 我试图做到:
char* personToString(person_t* p) {
int n1,n2;
n1=strlen(p->name);
n2=strlen(p->surname);
char *p = (char*) malloc((n1+n2+2)*sizeof(char));
strcat(p,puser->name);
strcat(p,":");
strcat(p,puser->surname);
return p;
}
这给了我一个合理的输出,但是我用 valgrind 测试了一些错误!我也认为有一种更优雅的方法来编写函数!