所以我試圖從一個文件中讀取一行中未知/任意數量的字符和未知/任意數量的行。閱讀,直到行結束。
我試圖做一個動態的二維數組來移動所有的信息到文件中,所以我可以做一個生命遊戲,但我需要先讀取文件以獲取列和行的數量。
我已經理解如何獲取行數。我只是要使用getline讀取文件,並將其重複多少次直到EOF。
我被困在如何獲得列數。有沒有辦法讓get函數只讀直到行尾?
所以我試圖從一個文件中讀取一行中未知/任意數量的字符和未知/任意數量的行。閱讀,直到行結束。
我試圖做一個動態的二維數組來移動所有的信息到文件中,所以我可以做一個生命遊戲,但我需要先讀取文件以獲取列和行的數量。
我已經理解如何獲取行數。我只是要使用getline讀取文件,並將其重複多少次直到EOF。
我被困在如何獲得列數。有沒有辦法讓get函數只讀直到行尾?
完成getline後,您可以在字符串上調用.length()
以獲取字符數。例如:
getline (cin,line);
columns = line.length();
您返回的字符數應該表示列數。
+1爲合理的答案,雖然我會使用'長度',因爲這對於srings更加習慣。 –
@Alf聽起來不錯。我會改變它。我喜歡「長度」更適合絃樂。 –
感謝您的回答。那正是我所需要的。時間回到編碼:)。 –
列如何在行中分開?那是如何計算列的? –
請不要使用標準的EOF方法。 更多的信息在這裏:http://www.dreamincode.net/forums/topic/145699-eof-and-reading-text-files-c/ – Eejin
怎麼了超級愚蠢downvoting,甚至是近距離投票? +1只是爲了彌補一點。 –