53.7 심사문제 질문
, 한 태제님이 작성코드는 for (int i = 0; i < 5; i++)
{
scanf("%s %d", &p[i]->name, &p[i]->age);
}
int a = p[0]->age;
int b = p[0]->name;
for (int i = 0; i < 5; i++)
{
if (a < p[i]->age)
{
a = p[i]->age;
b = p[i]->name;
}
}
이렇고요 심사문제 하고 있는데 잘안되요 ㅠㅠ 질문 너무 많이 해서 죄송합니다.
Re: 53.7 심사문제 질문
, 도장_ 관리자님이 작성제시된 코드를 보면 구조체 포인터 배열만 있습니다. 실제로 구조체의 데이터를 담을 수 있는 메모리 공간이 없습니다.
Unit 53.2를 보면 struct_pointer_array.c 예제를 보면 malloc 함수로 메모리 공간을 할당하고 있습니다. 이 예제를 응용한 것이 심사문제입니다.
메모리 공간이 없으니 입력 받은 값을 저장할 수 없습니다.
질문은 많이 해도 괜찮습니다. 그런데 포인터 부분은 C 언어에서 가장 어려운 부분이어서 모두 다 이해하려고 하기보단 무시하는 것도 필요합니다. 대학생도 이해하기 어려워하는 주제입니다. ^^;
심사문제는 해당 단원의 예제를 응용한 것이니 잘 안 될 때는 이전 예제를 잘 살펴보는 게 좋습니다.