한 구성원이 다차원 배열을 포함하는 2 명의 직원을 인쇄하려고합니다.출력에 -9.255가 포함 된 이유는 무엇입니까?
struct Employees{
string name;
double salary;
char skill[5][20];
};
void main(){
Employees Namn[3] = {
{ "Dawn", 120000, { "C#", "C++" } },
{ "John", 13456, { "Java", "C++" } }
};
for (int i = 0; i < 3; i++){
cout << Namn[i].name << "\t";
cout << Namn[i].salary;
cout << "\t";
for (int j = 0; j < 5; j++){
for (int k = 0; k < 20; k++){
cout << Namn[i].skill[j][k];
}
}
cout << endl;
}
}
'나는 2 명의 직원을 인쇄하려고합니다. '그럼에도 불구하고 3 개의'직원 '을 인쇄하고 있습니다. – user657267
왜 3 명의 직원을위한 공간을 할당하지만 2 명의 데이터 만 제공합니까? 컴파일러/IDE에서 경고 수준을 최대로 설정하십시오. 이 문제에 대한 경고를 받았어야합니다. –
배열을 초기화 할 때 일부 기술이 누락되었습니다. 누락 된 기술 (예 : 빈 문자열)을 제공하고 기본값을 제공하기 위해 컴파일러에 의존하지 마십시오. –