在vc中我定义了个float变量,大家都知道float占4个字节的内存空间,我想直接对该float变量写入二进制数 10

即:直接将32位1111.......二进制数据写入该变量对应的内存中,该如何操作?求助各位大神了... 即:直接将32位1111.......二进制数据写入该变量对应的内存中,该如何操作?求助各位大神了 展开
 我来答
pan017
2012-08-12 · TA获得超过732个赞
知道小有建树答主
回答量:176
采纳率:0%
帮助的人:93.6万
展开全部
unsigned int i = 2^32 - 1; //32个1
或者 int i = -1;

float f = *((float *)&i);

追记:由于整型值和浮点值在内存解释方式上的差异,所得的float的值也并非是11111(32个1)。
更多追问追答
追问
我的意思是有没有办法直接操作float变量对应的内存空间
追答
这不是已经写进去了么?写了32个1?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lgao622
2012-08-15 · 知道合伙人软件行家
lgao622
知道合伙人软件行家
采纳数:1137 获赞数:6550
毕业于武汉工程大学邮电与信息工程学院通信专业,软件行业,4年工作经验。

向TA提问 私信TA
展开全部
#include<string.h>
#include<stdio.h>
#include<stdlib.h>
int main()
{
char ch[4]={0x12, 0x55, 0x06, 0x09};//任意数
char fch[40];
float *flo;
flo= (float*)ch;
gcvt(*flo, 32, fch);
printf("%s\n", fch);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huzecong
2012-08-13 · TA获得超过267个赞
知道小有建树答主
回答量:226
采纳率:0%
帮助的人:137万
展开全部
不太理解楼主想干什么……能详细说下吗?直接操作内存是要干什么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式