최근 구조체에 동적으로 메모리를 할당해야하는 과제가있었습니다. 나는이 방법을 사용했다 :C에서 동적으로 구조체를 할당하는 방법은 무엇입니까?
myStruct *struct1 = malloc(sizeof *struct1);
이것은 잘 동작했다. 그러나 나는 어떻게 이해하지 못한다. 그 시점에서 struct1
포인터가 초기화되지 않았으므로 크기가 작아야한다고 생각합니다. 따라서 malloc(sizeof *struct1)
은 어떻게 할당할만한 양의 메모리를 반환합니까?
sizeof는 런타임이 아닌 컴파일시에 해결됩니다. –
@PeteBaughman : 가변 길이 배열의 경우는 예외입니다. – dreamlax