[英]substitute string character with a character from another string in C language
當我運行該程序時,它崩潰了。 我想將一個字符從一個字符串復制到另一個。 你能幫助我嗎? 例如:我想將“ wello”作為array [0]而不是“ hello”
int main()
{
int N=3;
char *array[10];
array[10]=malloc(N*sizeof(char));
array[0]="hello";
array[1]="wall";
array[2]="dinner";
array[0][0]=array[1][0];
printf("array[0][0]: %c\n", array[0][0]);
printf("array[0]= %s, array[1]= %s, array[2]= %s", array[0], array[1], array[2]);
return 0;
}
您在這里遇到一些問題:
array
只有10個元素,因此沒有索引10
。 array
的前3個元素的字符串分配空間,因此可能不允許修改它們。 array
有10個元素? 如果您從未使用過,為什么還要為11號分配空間? 數組中的所有字符指針都沒有指向有效的內存位置。 您需要為每個指針做一個malloc
來在其中存儲一個字符串。 另外, array[10]
在您為array
聲明的索引之外(0到9)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.