void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
关于void
void主要是用在限定函数参数以及返回值上。
值得注意的一点是在c++的code中,如果函数没有参数的话,需要加上void,否则出错提示“'fun' : function does not take 1 parameters”。
关于void *
void*真是一个好东东,所有的一切都可以转换成void*,然后你可以在把void*转化成你想操作的格式,进行操作。比说,你想随机访问一大块内存中的信息时,把void*转换成unsiged char * 再做操作,十分方便。
在gcc上,转化的步骤都可以省略,可以直接对void*操作,因为它默认void*是一个char*
详细可以参考
http://baike.baidu.com/view/1004734.htm