看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) C/C++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 現在有一個檔案裏面列出不同長度的名字 要能讀取完畢自動換行讀取下一行的名字 餵入的資料(Input): James Daniel Lisa 預期的正確結果(Expected Output): 有個二維的矩陣 會儲存對應名字字元 錯誤結果(Wrong Output): 常常因為換行符號導致讀取錯誤 程式碼(Code):(請善用置底文網頁, 記得排版) ptr=fopen("ride.in","r"); for(i=0;i<3;i++){ j=0; while(j!=8){ fscanf(ptr,"%c",&a[i][j]); if(a[i][j]=="\n"); j=8; else j=j+1; } } 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.42.201 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1432555675.A.804.html
remizu: '\n'? 05/25 21:13
jacky1989: fgets? 05/26 01:02
MOONRAKER: 何苦一次讀一個字母。 05/26 11:06
anyoiuo: 1. if後面不該有; 2.換行字元為 '\n' 而不是 "\n" 05/27 13:47
anyoiuo: 3. 字串記得補上字串結尾'\0' 05/27 13:48
anyoiuo: 4. 應考量檔案中每筆名稱長度大於7(扣除'\0')時的狀況 05/27 13:51
anyoiuo: 5. 最後一筆姓名結尾沒換行時為EOF, 反之則為'\n' 05/27 13:53
anyoiuo: 剛寫的給您參考: http://ideone.com/iHHsCY 05/27 13:54