0
我正在處理我的C代碼,並遇到了打印我的二維數組的問題。而不是打印一個字符串,它從問題點打印整個數組。C:打印二維數組問題
作爲一個例子,輸入的是,「狗」,「貓」,「帽子」。然後它會打印出來:
DogCatHat
CatHat
Hat
這是我的代碼是suppsoed要做的:它從文件讀取。它創建一個char數組數組。每個字符數組中有30個字符,這時從文件中讀取一個字符。然後它打印出每行一個字符數組。
這是代碼的樣子:
char fname[] = "folder/text.txt";
char arry[30][30];
FILE *file;
file = fopen(fname, "r");
for(int x=0; x<30; x++){
for(int i=0; i<30; i++){
arry[x][i] = fgetc(file);
}
}
fclose(file);
for(int i=0; i<30; i++){
printf("%s\n", arry[i]);
}
很可能我剛纔提出一個明顯的錯誤,但我沒能找到它。所以請幫助。
看到你的問題的標題很奇怪!你不能說'printf()'打印一個二維數組。它不能。 –
請記住C中的字符串實際上被稱爲* null terminated *字節字符串。該終結符是將字符數組轉換爲字符串的方式。 –
@BLUEPIXY這不是問題,只是我沒有寫我自己的代碼。但是,tes tjat會是個問題... – Adrian