The void data type is used when no other data type is appropriate. A void pointer is a pointer that may point to any kind of object at all. It is used when a pointer must be specified but its type is unknown.
The compiler doesn't know the size of the pointed-to objects incase of a void * pointer. Before performing arithmetic, convert the pointer either to char * or to the pointer type you're trying to manipulate
2) We can perform indirection on void pointers
void main()
{
void *v;
int integer=2;
int *i=&integer;
v=i;
printf("%d",(int*)*v);
}
This will issue compiler error.
Saturday, December 5, 2009
What is a void pointer? Why can't we perform arithmetic on a void * pointer?
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment