我正试图在C
中创建一个function
,它将string
与先前声明的string pointer
连接起来。例如,它从Test+Word生成TestWord。不知怎的,当我printf
时,结果是两个单词成功地连接在一起,但在下一行我得到了很多KKKKKKKKKKKKK
字母。
这就是功能:
char* hozzafuz(char* elso_tag, char string[]){
char *ptr = (char*)malloc( (strlen(elso_tag) + strlen(string) + 1) * sizeof(char));
for(int i=0; i<strlen(elso_tag); i++){
ptr[i]=elso_tag[i];
}
int index = 0;
for(int i=strlen(elso_tag); i<(strlen(elso_tag) + strlen(string)); i++){
ptr[i]=string[index++];
}
ptr[strlen(elso_tag) + strlen(string)] = 'n';
free(elso_tag);
return ptr;
}
我做过类似的函数,但它们都有相同的问题。我认为内存分配有问题。
c
中的字符串由