Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C의 void 포인터

<시간/>

C의 void 포인터는 데이터 유형과 연결되지 않은 포인터입니다. 저장소의 일부 데이터 위치를 가리키고 변수의 주소를 가리킵니다. 범용 포인터라고도 합니다. C에서 malloc() 및 calloc() 함수는 void * 또는 일반 포인터를 반환합니다.

몇 가지 제한 사항이 있습니다 -

1) void 포인터는 구체적인 크기로 인해 포인터 연산이 불가능합니다.

2) 역참조로 사용할 수 없습니다.

알고리즘

Begin
   Declare a of the integer datatype.
      Initialize a = 7.
   Declare b of the float datatype.
      Initialize b = 7.6.
   Declare a pointer p as void.
   Initialize p pointer to a.
   Print “Integer variable is”.
      Print the value of a using pointer p.
   Initialize p pointer to b.
   Print “Float variable is”.
      Print the value of b using pointer p
End.

다음은 간단한 예입니다 -

예시 코드

#include<stdlib.h>
int main() {
   int a = 7;
   float b = 7.6;
   void *p;
   p = &a;
   printf("Integer variable is = %d", *( (int*) p) );
   p = &b;
   printf("\nFloat variable is = %f", *( (float*) p) );
   return 0;
}

출력

Integer variable is = 7
Float variable is = 7.600000