동적배열할당의 개념이 헷갈립니다.
은송이
2023.04.01
*p
p=(데이터 타입 *)malloc(개수 * sizeof(데이터 타입))
이렇게 하면 동적배열 할당이잖습니까
**p
p=(데이터 타입 **)malloc(개수 * sizeof(데이터 타입 *))이렇게 하면 포인터 배열과 같은게 맞나요?만약 맞다면 이 포인터 배열의 요소가 구조체를 가르키게 된다면 p[개수-1]=(데이터 타입 *)malloc(sizeof(구조체 타입))으로 메모리 할당을 가르킨 다음에 포인터에 대입하는게 맞는지요?구조체 포인터 배열을 동적할당으로 선언해야 하는데 개념이 헷갈립니다.
-
제나
2중 3중 포인터 역시 헷갈린다 ㄷㄷ
-
무들
살불살조 // (? **) 로 할당을 해준 뒤에는 각 원소에 어드레스를 넣어주면 됩니다.
그것이 만약 새로 할당해야할 것이라면 (? *) 마다 malloc 을 해주면 됩니다.
다른 변수의 포인터가 될 것이라면 그 변수의 어드레스를 대입하면 됩니다. -
울트라
p=(데이터 타입 **)malloc(개수 * sizeof(데이터 타입 *))
여기까지만 해줘야 포인터 배열과 같은건가요?
//p[개수-1]=(데이터 타입 *)malloc(sizeof(구조체 타입)) -
다올
아 그러면 동적할당으로 포인터배열을 만드는건
이차포인터를 한번만 할당해줘야 하는건가요? -
아름나
위의 것은 1차원 배열을 만드는 것이고,
아래 것은 2차원 배열을 만드는 것입니다.