나는 다음과 같은 구조를 가지고 :는 매개 변수
typedef struct {
char nom[30], prenom[20];
int age;
} ITEM;
//and I have a function where I am entering the info as follow:
void Lire(ITEM **items, int *nb_items)
{
int i,j = 0, novalida = 0;
ITEM *temp;
printf("*** Entrer les donnees et taper . pour terminer\n\n");
for (i = 0; TRUE; i++) {
temp = (ITEM *) realloc(*items, ((*nb_items + 1) * sizeof(ITEM)));
if (temp == NULL)
{
printf("Il n'y a pas de memoire! \n");
exit (0);
}
*items = temp;
printf("> nom : ");
scanf("%s", **items[i].nom);
을하고 난 오류가있어 : 내가 값을 할당해야하는 경우 알고 싶은 그런
request for member ‘nom’ in something not a structure or union
scanf("%s", **items[i].nom);
을 나는 정상적인 구조와 같은 방식으로 동적 인 구조를 사용합니다.
이것은 내가 볼 수있는 C 코드이며, 왜 당신의 질문에 C++ 태그를 붙였습니까? –
죄송합니다. 처음입니다. –
질문에 대한 진정한 대답은 간접적 인 실수를 너무 많이하지 않는 것입니다. 왜냐하면 이러한 실수는 쉽게 만들어지기 때문입니다. 첫 번째 솔루션은 항목과 nb_item을 구조체에 캡슐화 한 다음 함수를 변경하여 해당 구조체에 대한 포인터를 가져옵니다. 두 번째 해결 방법은 동적 배열 대신 링크 된 목록을 사용하는 것입니다. –