[C] void 포인터
포인터가 전달한 데이터의 자료형을 void로 설정할 수 있다. 이것이 의미하는 것은 어떤 자료형을 받을지 모른다는 것인데, 이때 형변환을 하지 않으면 포인터가 데이터를 받지 못하는 오류가 발생한다. void *p ; *p = 5 ; // 오류 출력 :대상 메모리의 크기가 지정되지 않음. 따라서 형변환 (int *) 등을 적용해줘야하는데 다음과 같은 형태이다. void *p ; *(char *)p = 5; 그렇다면 포인터가 전달할 데이터의 자료형을 void로 두는게 어떤 이득이 있을까? 어떤 자료를 받을지 모를때 유용하게 사용될 것이다. 아래 AssignType 함수는 switch문과 if ~ else if 문을 활용하여 포인터에 자료형을 부여하고 있다. #include int AssignType(void..
2021.01.06