关于C++指针的问题
我初学C++,为了练习指针的类型转换编了以下程序,但有问题,请为高手指点。
#include <iostream.h>
void main()
{
int a(7),*pint;
double b(5.6311),*pdouble;
void *pv;
pint=&a;
pv=pint;
cout<<*pv<<endl;
pdouble=(double *)pv;
cout<<*pdouble<<endl;
}
以下是在Visual C++ 6中的编译出错提示:
Compiling...
Array.cpp
E:\CPP\Array.cpp(9) : error C2100: illegal indirection
MSDN上看是讲*pv是空指针,没有指向值,但程序中有定义啊,它的类型应该是int
才对啊,难道VC不支持无类型的指针么?
我初学C++,可能有不对之处,请各位指教。
帮小弟一把,问题在哪里?