我真的迷失了为什么我为这个特定的数组索引收到错误。我正在编写一个程序,从文本文件中输入学生成绩。此文件为10行,每列2列,格式为(FirstName,LastName,Grade 1,Grade 2,Grade 3,Grade 4,Grade 5)。在执行期间,我需要逐行循环遍历文件并将名称放入它们自己的10行2列中,并将等级放在它们自己的10行乘5列中。这是一类课程,Idk为什么我们这样做。基本上,数据将在循环期间拆分并加载到namesArray和gradesArray中。我在我的IDE中标记了错误行,在任一侧和行位置都标有 *
最后,这是我的代码:
//Student Name: Jacob Gillespie
//Date: 10/20/13
//Program: Student Grade Manipulation
//Summary: Reads in grade data from text file, manipulates data
//and stores data back in output file
//Headers
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
//Declare variables and arrays
ifstream inData;
ofstream outData;
string namesArray[10][2];
string gradesArray[10][5];
//Main Program Execution
int main()
{
//Open the data file containing the student names and grades
inData.open("StudentGrades.txt");
//Read data lines and assign student names to namesArray and grades to gradesArray
for (int counter = 0; counter < 10; counter++)
inData >> namesArray[counter][0] >> namesArray[counter][1]
>> gradesArray[counter][0] >> gradesArray[counter][1] >> gradesArray[counter][2]
>> gradesArray[counter][3] >> gradesArray [counter][4];
//TESTING, Print namesArray and gradesArray to ensure values are loaded and assigned correctly
for (int counter = 0; counter < 10; counter++)
*****cout >> namesArray[counter][***0***] >> " " >> namesArray[counter][1] >> endl;*****
for (int counter = 0; counter < 10; counter++)
cout >> gradesArray[counter][0] >> " " >> gradesArray[counter][1] >> " " >> gradesArray[counter][2]
" " >> gradesArray[counter][3] >> " "gradesArray [counter][4] >> endl;
return 0;
}
答案 0 :(得分:2)
cout >> ... >> .. >> ...;
应该是
cout << ... << .. << ...;
考虑将数据放入输出流,因此数据应该转向它。
答案 1 :(得分:2)
作为输出流的cout
运算符为<<
。
+--------+
| |
| cout | <<----- data
| |
+--------+
+--------+
| |
| cin | ----->> data
| |
+--------+