我一直對這個在過去的4個小時左右,並不能弄清楚該怎麼做。我將我的人生遊戲移植到C,無法讓FileIO正常工作。輸入文件的格式爲:遊戲人生,FileIO專注貯藏板
Game 1: Pattern Name
10 20
// Pattern here
Game 2: Pattern Name
15 25
// Pattern here
等等等等,直到文件結束。我想要做的就是打印的遊戲,並創建大小10
和20
的第一場比賽的多維數組,然後將其存儲在該數組中的模式。這是我到目前爲止有:
void fileIO() {
FILE *file;
char buffer[BUFFER_SIZE];
int rows = 0, cols = 0;
file = fopen("input.txt", "r");
if(file == NULL) {
printf("Error opening file.");
} else {
while(fgets(buffer, BUFFER_SIZE, file) != NULL) {
if(strstr(buffer, "Game") != NULL) {
printf("%s", buffer);
} else {
sscanf(buffer, "%d%d", &rows, &cols);
}
}
fclose(file);
}
}
這裏就是我撞到牆,並碰到的問題的列表,
Creating a dynamic global multi-dimensional array
Preventing the buffer from reading into the next game
我想,最好的辦法要做到這一點是創建爲每個遊戲像一個結構數組,
struct game {
char board[][];
};
struct game games[];
不過,我不知道如何動態地設置參數的行和列的每一個量。