구조체의 2D 배열을 만들고 값을 인쇄하려고합니다. 어떻게 메시지를 ""Segmentaion 오류 (코어 덤프) ".C++에서 동적으로 할당 된 2D 배열 구조를 만드는 방법은 무엇입니까?
#include <iostream>
#include <string>
using namespace std;
struct student{
string name;
int age;
float marks;
};
student* initiateStudent(string name, int age, float marks){
student *studFun;
studFun->name = name;
studFun->age = age;
studFun->marks = marks;
return studFun;
}
int main() {
int totalStudents = 1;
string name;
int age;
float marks;
cin >> totalStudents;
student** stud = new student*[totalStudents];
for(int i=0;i<totalStudents;i++){
stud[i] = new student[1];
cin >> name >> age >> marks;
stud[i] = initiateStudent(name,age,marks);
}
delete [] stud;
return 0;
}
나 C++에 대한 넷빈즈를 사용하여 컴파일하고 있습니다. 사람이 코드를 사용하여 무슨 잘못 말해 줄래?
'initiateStudent'는 초기화되지 않은 변수'studFun'을 가지고있어서 여러분이 간접적으로 쓰고 있습니다. 충돌이 일어나는 경향이 있습니다. 적절한 경고를주고 최대 레벨로 켜는 컴파일러를 찾습니다. –
initiateStudent 함수의 끝 –
@ ZalmanStern 코드를 수정해야하는 이유는 무엇입니까? – Spandy