C 메모

void 포인터

빵맨. 2020. 3. 7. 18:03
728x90

void *vp 

# void : 가리키는 자료형이 정해지지 않음

: void 포인터는 가리키는 자료형이 정해져 있지 않으므로 어떤 주소든 저장 할 수 있다.

  또한 같은 이유로 간접 참조 연산이나 정수를 더하는 포인터 연산이 불가능하다.

  간접 참조 연산을 하려면 몇 바이트를 어떤 형태로 읽어야 하는지 알려줘야 하므로,

 

  printf("a : %d\n", *(int *)vp) ==> 이런식으로 int *로 형 변환 시켜줘야 한다.

728x90