如何用整形的指针去指向字符型的变量??
如何用整形的指针去指向字符型的变量??
并且编译不出错?
我看C_C++指针经验总结.pdf上面有一段是讲这个的!
不过编译器不一样,好像运行结果也不行的哈!
我按他上面的做,VC6.0还是出错了!!
那么用指针指向字符型变量有办法没有的呀??
#include <iostream> typedef union //定义一个指针联合 { char* pCharPoint; int* pIntPoint; }POINTDEMO,*PPOINTDEMO; /* 演示指针联合的用法,同一地址空间的不同数据类型解释。 */ int main(int argc,char** argv) { using namespace std; char* strdemo = "String Demo"; POINTDEMO pu; //声明一个指针联合的实例 pu.pCharPoint = strdemo; //自然复制 pu.pIntPoint = (int*)strdemo; //强制转换 cout<<pu.pCharPoint<<endl; //输出 cout<<(char*)pu.pIntPoint<<endl; //强制转换输出 cout<<*(pu.pCharPoint + 1)<<endl; //输出第二个字符 cout<<*(char*)(pu.pIntPoint + 1)<<endl; //输出 +sizeof(int)个字符 return (int)0; }