字符串指针与整形指针的转换问题!
char *a[]={"0x08","0x02","0x03"};
int *p=(int*)a;
cout<<*p<<endl;
输出为:4649008
为什么输出这个值???
char *a[]={"0x08","0x02","0x03"};
int *p=(int*)a;
cout<<*p<<endl;
输出为:4649008
为什么输出这个值???
同 2楼 ,强制转换。
补充:
*p == a;
p[0] 为 0x08 的地址。
char * cp;
cp = (char *)(p[0]); // "0x08"
cout<< cp <<endl; // 0x08
[此贴子已经被作者于2007-11-19 14:59:12编辑过]