我已经阅读了有关如何执行此操作的问题,但没有一项有效。我试图从文件(类型双打)中读取天气温度。我应该使用2D数组读取它们(我不知道有多少行,但我知道有多少列)。在我阅读之后,我想显示它们以确定它是否有效。
int numRows;
int numCols = 12;
int i = 0;
string line;
while (!inFile.eof()) // Count the number of rows.
{
getline(inFile, line);
i++;
}
inFile.close();
numRows = i;
cout << "There are: " << numRows << " rows in this file." << endl;
cout << line << endl;
double TempNum;
double **Temps;
Temps = new double*[numRows];
for (int row = 0; row < numRows; row++)
Temps[row] = new double[numCols];
while (!inFile.eof())
{
inFile >> Temps[numRows][numCols];
}
inFile.close();
// Want to print on screen to see if it worked.
for (int row = 0; row < numRows; row++)
{
for (int col = 0; col < numCols; col++)
cout << Temps[numRows][numCols];
}
我知道我正在忽略一些关于如何在行内获得实际温度数字的信息。专栏,但我无法弄清楚。我做错了什么?
答案 0 :(得分:0)
您需要为行指定一个数字。编译器需要知道在执行之前要为阵列保留多少内存。