现在的位置: 首页 > 综合 > 正文

void 指针

2013年10月06日 ⁄ 综合 ⁄ 共 428字 ⁄ 字号 评论关闭

不久前在看书时看到void 指针,觉得很不认识,所以找了点资料,记录如下:

   void指针即空指针,如void *vp; 根据vp只能够知道一个地址,但不能够判断出它指向对象长度。

   (1):任何指针都可以赋值给void指针;

        void *vp;

        type *p;

        vp = p; //不需转换,只获得变量/对象地址而不是获得大小。

   (2)void指针赋值给其他类型的指针时都要进行转换;

        type *p = (type *)vp; //转换类型也就是获得指向变量/对象大小。

   (3)void 指针不能复引用;

        *vp; //错误,因为void指针只知道指向变量/对象的起始地址,而不知道变量

大小,故不能正常引用。

   (4)void指针不能参与指针运算,除非进行转换。

        (type *)vp ++; //vp == vp + sizeof(type);

抱歉!评论已关闭.