void pointer in C

C++Server Side ProgrammingProgrammingC

The void pointer in C is a pointer which is not associated with any data types. It points to some data location in the storage means points to the address of variables. It is also called general purpose pointer. In C, malloc() and calloc() functions return void * or generic pointers.

It has some limitations −

1) Pointer arithmetic is not possible with void pointer due to its concrete size.

2) It can’t be used as dereferenced.

Algorithm

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.

Here is a simple example −

Example Code

 Live Demo

#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;
}

Output

Integer variable is = 7
Float variable is = 7.600000
raja
Published on 02-Apr-2019 16:55:18
Advertisements