gpt4 book ai didi

c++ - 从 C++ 中的文件加载到二维数组

转载 作者:行者123 更新时间:2023-11-30 01:24:57 24 4
gpt4 key购买 nike

我无法将文件中的数字读取到 C++ 中的二维数组中。它读取第一行就好了,但其余行都填充了 0。我不知道我做错了什么。

#include <iostream>
#include <fstream>

using namespace std;

int main()
{
int myarray[20][20];

int totRow = 20, totCol = 20, number, product, topProduct = 0, row, col, count;
char element[4];

ifstream file;

file.open( "c:\\2020.txt" );

if( !file )
{
cout << "problem";
cin.clear();
cin.ignore(255, '\n');
cin.get();

return 0;
}

while( file.good())
{
for( row = 0; row < totRow; row++ )
{
for( col = 0; col < totCol; col++ )
{
file.get( element, 4 );
number = atoi( element );
myarray[row][col] = number;
cout << myarray[row][col] << " ";
}
cout << endl;

}
file.close();
}

最佳答案

如果您的文件中只有数字,您可以使用 >>> 运算符读取它们。将您的内部循环更改为:

for( col = 0; col < totCol; col++ )
{
file >> myarray[row][col];
cout << myarray[row][col] << " ";
}

file.get() 的问题是,它读取的内容不超过换行符 \n。请参阅:std::basic_istream::get

关于c++ - 从 C++ 中的文件加载到二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13076111/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com