怎么把 int * 转换成 unsigned short
如何把 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