void * 挟制转换
void * 强制转换
把一个void * test 强制转换成int
是这样写的吗?(int )test
------解决方案--------------------
是的是的是的
------解决方案--------------------
是.
是的...
------解决方案--------------------
指针的大小随操作系统或编译器不同也许有差异,而int型基本固定为4字节大小,所以这样的
强转通常容易产生截断造成相当一部分悲剧。
------解决方案--------------------
对
但是 强制转换会丢失一部份内容
------解决方案--------------------
这样得到的是test所指向的地址
int *x = (int *)test;这样可以把test指向的内容强转。另外你要注意大字节序,小字节序问题。
int x的话,用memcpy吧。强转好像专不出来
------解决方案--------------------
把一个void * test 强制转换成int
是这样写的吗?(int )test
------解决方案--------------------
是的是的是的
------解决方案--------------------
是.
是的...
------解决方案--------------------
指针的大小随操作系统或编译器不同也许有差异,而int型基本固定为4字节大小,所以这样的
强转通常容易产生截断造成相当一部分悲剧。
------解决方案--------------------
对
但是 强制转换会丢失一部份内容
------解决方案--------------------
这样得到的是test所指向的地址
int *x = (int *)test;这样可以把test指向的内容强转。另外你要注意大字节序,小字节序问题。
int x的话,用memcpy吧。强转好像专不出来
------解决方案--------------------