好吧,我知道如何將數字存儲到數組中,但是我正在編寫一個Sudoku程序,並且需要從輸入文件中讀取和存儲。該文件將有一半完成數獨板,是的,我只需要做一些事情。我的問題是,板上的數字沒有用123456789之類的空格分開,我需要單獨讀取每個數字,以將每個數字存儲在陣列中的不同位置。然而,cin只會得到整個組,而cin.get()會給我ASCII值...所以我有點困惑如何讓他們單獨存儲。也許這是一個明顯的答案,我只是沒有看到,我不知道。任何幫助表示讚賞。將數字列表單獨存儲到C++中的二維數組中
感謝您的回覆尼克。我有一個小函數來填充輸入文件中的二維數組。那就是:
爲(i = 0;我<的行;我++) {
for (j = 0; j < COLS ; j++)
{
in.get(getData);
data = getData - '0';
myArray[i][j] = data;
}
}
我加入的getData - 您推薦的 '0' 的一部分,它似乎只是我」上班把它作爲輸出。
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -38 | 1 |
現在的輸入文件只是'123456789'的9X9行和列,所以它應該輸出該文件。不知道-38是從哪裏來的? 顯示它的代碼實際上與現在只填充不同功能的代碼相同。任何想法?同時,我會修補。
好吧,我不知道,我得知它是在閱讀最後一行,並把東西扔出怪物。我只是在裏面放一點cin.get(temp)來讀取endline並繼續。希望這是關於事情的正確方法。