[問題] 讀檔_大量陣列

看板C_and_CPP (C/C++)作者 ((小惡魔))時間13年前 (2012/09/11 17:05), 編輯推噓5(5012)
留言17則, 9人參與, 最新討論串1/1
開發平台(Platform): C語言 問題(Question): 小弟目前有550*40000資料量的一維陣列 想要進行讀檔 一次一次讀550筆(0~549 550~1099 1100~1649) 總共讀40000次,但小弟目前每一次讀檔, 都只能讀到最前面的資料(0~549) 而無法讀到之後的檔案(550~1099之後的.....) 請各位大大幫忙一下,謝謝~"~ PS.資料都是整數型態 程式碼(Code):(請善用置底文網頁, 記得排版) int main(){ FILE *fidr1; fidr1 = fopen("D:\\CUDA_code\\PictureToGPU5\\yy1.txt","w"); FILE *fidr2; int intensity[550]; for(int k=0;k<40000;k++){ fidr2=fopen(c1, "D:\\rf1-zebrafish-txt\\rf1_fish-1_0_0.txt",'r'); for(int i=0;i<550;i++) { fscanf(fidr2," %d",&intensity[i]); fprintf(fidr1," %d",intensity[i]); } fprintf(fidr1,"\n"); } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.136.147.62

09/11 17:10, , 1F
fidr4 改成fidr2......沒改好 抱歉
09/11 17:10, 1F

09/11 17:10, , 2F
大 E 修改內文
09/11 17:10, 2F
※ 編輯: piano666 來自: 140.136.147.62 (09/11 17:11)

09/11 17:11, , 3F
謝謝love大~
09/11 17:11, 3F

09/11 17:12, , 4F
你的來源檔開了四萬次
09/11 17:12, 4F

09/11 17:13, , 5F
是的,因為我想說另一個550*40000的陣列太大了,所以想
09/11 17:13, 5F

09/11 17:13, , 6F
說讀四萬次
09/11 17:13, 6F

09/11 17:24, , 7F
你應該是開了一個檔一直讀下去 不是每次都重開檔案
09/11 17:24, 7F

09/11 17:51, , 8F
想操SSD也不是這樣操吧?= =把讀檔移出迴圈外就好
09/11 17:51, 8F

09/11 17:52, , 9F
09/11 17:52, 9F

09/11 17:52, , 10F
對家:四萬 莊家:放槍!!!
09/11 17:52, 10F

09/11 21:11, , 11F
保安 可以讓人家這樣開了又開 開了又開 開了又開嗎
09/11 21:11, 11F

09/11 22:32, , 12F
fscanf(fidr2,"%d",&intensity[i]); fscanf 去空白先試試
09/11 22:32, 12F

09/11 22:33, , 13F
還有真的不用開了又開 開了又開 Orz
09/11 22:33, 13F

09/11 23:06, , 14F
操作fd就好了,不用這樣一直開啦…
09/11 23:06, 14F

09/11 23:07, , 15F
狂io你這程式的效能低落到爆啊…
09/11 23:07, 15F

09/12 07:23, , 16F
重點是每次重新讀檔會從第一行開始讀
09/12 07:23, 16F

09/12 07:23, , 17F
這就是為什麼你讀不到後面
09/12 07:23, 17F
文章代碼(AID): #1GJlxZBe (C_and_CPP)
文章代碼(AID): #1GJlxZBe (C_and_CPP)