Такому указателю можно присвоить значение указателя на любой базовый тип.
void *v_ptr;
int *int_ptr = new int;
v_ptr = int_ptr;
//Программа 4.
#include <stdio.h>
#include <conio.h>
void swap (void *&item1, void *&item2)
{
void *temp = item1;
item1 = item2;
item2 = temp;
}
void main(void)
{
int *i = new int,
*j = new int;
*i = 5;
*j = 20;
clrscr();
swap((void *&)i,(void *&)j);
printf(" *i = %d, *j = %d \n", *i,*j);
float *x = new float,
*z = new float;
*x = 5.0;
*z = 20.0;
swap((void *&)x,(void *&)z);
printf(" *x = %f, *z = %f \n", *x,*z);
}