读书人

怎么把 int * 转换成 unsigned short

发布时间: 2012-10-14 14:55:07 作者: rapoo

如何把 int * 转换成 unsigned short *

C/C++ code
void main(){        int temp = 9;    int *i= &temp;     unsigned short *j= (unsigned short *)(*i<<8);    printf("\r\n j=%d\r\n",j);}

结果不对。

[解决办法]
C/C++ code
    int temp = 9;    int *i= &temp;     unsigned short *j= (unsigned short *)i;    printf("\r\n j=%d\r\n",*j);
[解决办法]
你要什么结果?
[解决办法]
你应该说一下你的程序要做什么
unsigned short *j= (unsigned short *)(*i<<8);
这个,你把一个int强转成一个地址有什么意义吗?
unsigned short *j = (unsigned short *)&temp;这样直接转就可以了
[解决办法]
C/C++ code
int temp = 9; //0x9    int *i= &temp;     unsigned short *j= (unsigned short *)(*i<<8); // *i << 8 == 0x900 == j    printf("\r\n j=%d\r\n",j); //0x900 == 2304 

读书人网 >C语言

热点推荐