구조체 배열을 만들고 싶습니다. 배열의 structs는 사용자의 파일/입력에서 읽습니다. I는 각 구조체의 각 어레이에 대한 공간을 할당구조체 내부의 배열 요소 액세스 (C 배열)
ptr = (ST*)calloc(lines, sizeof(ST));
(크기의 입력을받은 후)
가struct student{
char name[16];
int *available;
int sum;
};
typedef struct student ST;
내가 구조체의 배열을위한 메모리를 할당 :
난 구조체를 선언 (루프 사용) :ptr->available = (int*)calloc(lines, sizeof(int));
지금이 배열에 값을 넣고 싶습니다. 각 요소에 어떻게 도달합니까?
내가 시도 :
*((ptr+i)->(available+j)) = 1;
하지만 컴파일러는 나에게 말한다 : error: expected identifier before ‘(’
(i와 j는 배열의 j 번째 요소 나 구조체 i 번째, 나는를 사용하여 인덱스 및 J 있습니다).
내가 뭘 잘못하고 있니?