void 指针的使用范畴
1:void 指针类型可以指向任意类型的数据,即可以用任意数据类型的指针对void指针进行赋值
例如:
int * pint;
void *pvoid;
pvoid = pint; /* 不过不能 pint=
pvoid; */
如果要将pvoid赋给其他类型指针,则需要强制类型转换如:pint=
(int *)pvoid;
2:在ANSIC标准中,不允许对void指针进行算术运算如pvoid++或pvoid+=1等,而在GNU中则允许,因为在缺省情况下,GNU认为void
*与char
*一样。sizeof(*pvoid
)== sizeof( char).
本文介绍了void指针的基本用法及限制条件,包括它可以指向任何类型的数据,并可通过强制类型转换赋值给其他类型指针;此外还讨论了在不同标准下对void指针进行算术运算的可行性。

被折叠的 条评论
为什么被折叠?



