C++中的void指针 void指针转换

void通常表示无值,但将void作为指针类型时,它却表示不确定的类型。这种void型指针是一种通用型指针,也就是说任何类型的指针值都可以赋给void类型的指针变量,例如:

voidpa; //错误,不能声明void类型的变量

void *pc//正确,可以声明void类型的指针

需要说明的是,这里说void型指针是通用型指针,是指它可以接受任何类型的指针的赋值,但对已获值的void型指针,对它再进行处理,如输出或传递指针时,则必须再进行显示类型转换,否则会出错误。看下面的例1.10。

void 型指针的使用

#include<iostream.h>

main()

{ void*pc;//声明void(无类型或叫通用性)指针pc

int i = 123;

char c = ‘a’;

pc =&i;//将存放整型数123的变量i的地址赋给void型指针pc

C++中的void指针 void指针转换

cout << *(int *)pc << endl;//输出指针值123,要进行整型数类型转换

pc =&c;//将存放字符a的变量c的地址赋给void型指针pc

cout << *(char *) pc<<endl; //输出指针值a,要进行字符型数类型转换

return 0;

}

输出结果:123

  

爱华网本文地址 » http://www.aihuau.com/a/25101016/295790.html

更多阅读

C#中的InitializeComponent()方法 component init方法

在每一个窗体生成的时候,都会针对于当前的窗体定义InitializeComponent()方法,该方法实际上是由系统生成的对于窗体界面的定义方法。//位于.cs文件之中的InitializeComponent()方法publicForm011(){InitializeComponent();}在每一个Fo

C ++ 中对象或其对象指针的赋值 c语言指针赋值

C++中对象或其对象指针的赋值C++中成员函数的动态绑定:C++中要实现函数的动态绑定,必须在其基类中将函数声明为virtual且在子类中对函数加以实现。然后用一个基类指针指向某一个子类对象,这样才会在函数调用时实现动态绑定。在C++中,只

声明:《C++中的void指针 void指针转换》为网友性占冇慾分享!如侵犯到您的合法权益请联系我们删除