[問題] 用C讀檔進去陣列

看板C_and_CPP (C/C++)作者 (K.L)時間16年前 (2009/11/11 10:44), 編輯推噓1(104)
留言5則, 1人參與, 最新討論串1/1
小弟我是用C來做一個讀txt的檔案 檔案的長相像這樣 1 -2 0 0 3 0 0 -5 4 int**image; image=(int**)calloc(size,sizeof(int *)); for(i=0;i<size;i++) image[i]=(int*)calloc(size,sizeof(int)); printf("請輸入檔案名稱:\n"); scanf("%s",name); FILE *fp; fp=fopen(name,"r"); fread(image,sizeof(int),size*size,fp); 想把它做成 A[][]陣列 ,想拿來做運算的關係@_@ a[0][0]=1 a[0][1]=-2 .... 可是在printf("%d\t",image[0][0]);時就會出問題了 問同學,同學說會有換行問題 > <" 可是我不清楚問題出在哪裡 有請各位高手解惑,謝謝 m(_ _)m -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.191.88

11/11 11:14, , 1F
請參考小弟拙作 - #1AFvltqI ; 你的二維陣列用這種方式
11/11 11:14, 1F

11/11 11:14, , 2F
要回來, 沒有辦法保證它一定是連續的, 所以你只能跑迴圈
11/11 11:14, 2F

11/11 11:15, , 3F
一次讀一維回來. 另外, 你的.txt檔看起來是ASCII文字的
11/11 11:15, 3F

11/11 11:16, , 4F
資料, 你用fread()讀回來, 資料大小跟內容都不會match.
11/11 11:16, 4F

11/11 11:17, , 5F
先搞清楚用二進位模式與文字模式讀資料的差異看看吧:)
11/11 11:17, 5F
文章代碼(AID): #1A-YK30q (C_and_CPP)
文章代碼(AID): #1A-YK30q (C_and_CPP)