-1
我有一個字符串數組,我試圖爲這些字符串之一malloc更多的空間,所以我可以更改值的字符串。當我爲一個字符串數組中的字符串malloc更多的空間時,字符串數組重複了一些字符串
int catenate_strings (char** arr, int index1, int index2) {
char *new_string;
new_string = malloc(1000*sizeof(char));
if (new_string == NULL) {
printf("\nError allocating memory\n");
}
strcpy(new_string, arr[index1]);
strcat(new_string, arr[index2]);
arr[index1] = new_string;
}
然而,當我跑我的代碼,它會爲某些情況下工作,但在別人將重複串在索引1,並把它放在索引1 + 1爲好。
你想「調整」一個字符串? –
請發佈[MCVE](http://stackoverflow.com/help/mcve)。 –
當您執行'arr [index1] = new_string'時,內存泄漏,您正在丟失前一個字符串。 –