首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

怎么将float类型指针的地址 转换为 char型

2012-06-05 
如何将float类型指针的地址转换为 char型如题如何将float类型指针的地址转换为 char型C/C++ codefloat *da

如何将float类型指针的地址 转换为 char型
如题
如何将float类型指针的地址 转换为 char型

C/C++ code
float *dataF;char *dataC;dataC =dataF;//这里应该怎么转换能转换吗


[解决办法]
应该是 将float类型的指针 转换为 char型的指针吧?

用强类型转化就可以了,如下

dataC =(char *)dataF;
[解决办法]
六楼大哥 那我这个为什么不对呢 再一个 这个结果好像不是0.5的值 还是我算错了00 00 00 3f运行你的程序的结果 我的是VC6.0 第一位 符号位 接着8位指数位 然后剩下23位的小数位
这个是我的(地址我在调试的时候看了就直接写了)
float b=0.5f;
printf("%02x",(unsigned char)*(char*)0x0012ff3c);
printf("%02x",(unsigned char)*(char*)0x0012ff3b);
printf("%02x",(unsigned char)*(char*)0x0012ff3a);
printf("%02x",(unsigned char)*(char*)0x0012ff39);
我运行的结果是00cccccc


还有我想问一下 浮点类型是怎么转换为整型的 原理是什么 谢谢
[解决办法]
楼主要看下《深入立即计算机系统》,用指针强行的把地址给转换了,但是没有什么作用啊,又不能作为char型数据给输出 啊
[解决办法]
探讨
六楼大哥 那我这个为什么不对呢 再一个 这个结果好像不是0.5的值 还是我算错了00 00 00 3f运行你的程序的结果 我的是VC6.0 第一位 符号位 接着8位指数位 然后剩下23位的小数位
这个是我的(地址我在调试的时候看了就直接写了)
float b=0.5f;
printf("%02x",(unsigned char)*(char*)0x0012ff3c);
printf("……

热点排行