好的,基本上,我有一个包含 9x9 网格(数独谜题)的文件。现在这个数独谜题只完成了一部分,空格被替换为“_”(下划线)。所以这是文件的外观。
5 _ _ _ _ _ 1 7 _
1 _ 6 5 _ 9 _ 4 _
4 7 2 1 _ 6 _ _ _
9 _ _ _ _ _ 5 _ _
_ 1 8 _ 9 5 4 _ _
6 _ _ 4 _ 2 3 8 9
_ 4 _ _ _ _ 9 3 _
_ 9 _ 7 _ 3 _ 5 _
2 6 3 9 5 8 7 1 4
这是我的代码:
for(int row=0;row<9;row++)
{
for(int column=0;column<9;column++)
{
fin >> num;
if(num == '\95')
sudokuPuzzle[row][column] = 0;
else
sudokuPuzzle[row][column] = num;
cout << sudokuPuzzle[row][column] << " ";
}
cout << endl;
}
我遇到的问题是在这条线上:
if(num == '\95')
我在 ASCII 表中查找下划线的十进制值,这就是我发现的。但是,每当我的循环中的 cout 语句执行时,它显示我的数组只填充了文件中的第一个数字 5。如何在整数和字符之间进行适当的比较?
仅供参考:基本上我正在尝试做的是将所有下划线替换为 0。