我正在为一个使用名为employee的类的项目工作。我遇到问题的地方在于显示功能。一切都正确显示,直到它结束,输出最终抛出的符号列表:
抛出异常:读取访问冲突。 这是0xFF4000。
我已经缩小到显示功能或输出显示的循环。对此问题的任何帮助将不胜感激。
#include <iostream>
#include <iomanip>
using namespace std;
class Employee {
private:
int empcode;
char empname[10];
public:
void getdata();
void display();
};
void Employee::getdata() {
cout << "\nNAME : ";
cin >> empname;
cout << "\nCODE : ";
cin >> empcode;
}
void Employee::display() {
cout << endl << setw(20) << empname << setw(10) << empcode << endl;
}
int main()
{
Employee Emp[6];
cout << "Enter employee details:\n ";
for (int i = 0; i<6; i++)
{
cout << "\nemployee " << i + 1 << endl;
Emp[i].getdata();
}
cout << "\nEmployee details are as follows :";
cout << "\n\n" << setw(20) << "NAME" << setw(10) << "CODE";
cout << "\n------------------------------";
for (int i = 0; 1 <= 6; i++)
Emp[i].display();
return 0;
}
答案 0 :(得分:1)
你的第二个循环错了:
for(int i = 0; 1 <= 6
; i ++)
应该是:
for (int i = 0; i < 6; i++)
1 < 6
会一直循环,但是i++
每次迭代都会增加,当它变为6时,它会尝试访问不存在的元素Emp[6]
,只有{{} 1}}