博客
关于我
C++ 任意数据类型转为16进制输出
阅读量:304 次
发布时间:2019-03-03

本文共 1528 字,大约阅读时间需要 5 分钟。

float和int没办法分开,还是得区分对待
Ubuntu下测试的,windows下没试过,大家试了告诉我啊。

#include <stdio.h>union FLOATUN{   	unsigned int unui;	float 		 unfl;};int main(){   	FLOATUN fun;	FLOATUN *pfun;	pfun = (FLOATUN *)&fun.unui;	printf("usint addr:%p\n",pfun);	pfun = (FLOATUN *)&fun.unfl;	printf("float addr:%p\n",pfun);	bool			aa;	bool		   *a = &aa; 		*a= 1;	char            bb;	char 		   *b = &bb; 		*b= 0x12;	unsigned char   cc;	unsigned char  *c = &cc; 		*c= 0x12;	short			dd;	short		   *d = &dd; 		*d= 0x123;	unsigned short	ee;	unsigned short *e = &ee; 		*e= 0x123;	int				ff;	int			   *f = &ff; 		*f= 0x123;	unsigned int	gg;	unsigned int   *g = &gg; 		*g= 0x123;	float			hh;	float		   *h = &hh; 		*h= 12.34;	double			ii;	double		   *i = &ii; 		*i= 12.34;	unsigned int ui;	float uf;	// 用联合体获取12.34的32位值	fun.unfl = 12.34;	printf("float hex value:%x\n",fun.unui);	ui = *a;	pfun = (FLOATUN*) &ui;	printf("a:%08x\n",*pfun);	ui = *b;	pfun = (FLOATUN*) &ui;	printf("b:%08x\n",*pfun);	ui = *c;	pfun = (FLOATUN*) &ui;	printf("c:%08x\n",*pfun);	ui = *d;	pfun = (FLOATUN*) &ui;	printf("d:%08x\n",*pfun);	ui = *e;	pfun = (FLOATUN*) &ui;	printf("e:%08x\n",*pfun);	ui = *f;	pfun = (FLOATUN*) &ui;	printf("f:%08x\n",*pfun);	ui = *g;	pfun = (FLOATUN*) &ui;	printf("g:%08x\n",*pfun);	uf = *h;	pfun = (FLOATUN*) &uf;	printf("h:%08x\n",*pfun);	uf = *i;	pfun = (FLOATUN*) &uf;	printf("i:%08x\n",*pfun);}

输出

usint addr:0x7fff87c078e0float addr:0x7fff87c078e0float hex value:414570a4a:00000001b:00000012c:00000012d:00000123e:00000123f:00000123g:00000123h:414570a4i:414570a4

转载地址:http://duwq.baihongyu.com/

你可能感兴趣的文章
Jmeter:性能测试中常见的名词(一)
查看>>
LInux:SELinux
查看>>
Python:高阶函数,柯里化Currying
查看>>
Python:函数 ----》装饰器函数
查看>>
Python:面向对象
查看>>
Python练习题 :随机生成一批数
查看>>
Spring源码:prepareBeanFactory(beanFactory);方法
查看>>
Spring源码:initApplicationEventMulticaster源码解析
查看>>
AcWing 786: 第k个数
查看>>
AcWing 798. 差分矩阵
查看>>
AcWing 828. 模拟栈
查看>>
AcWing 845. 八数码(BFS)
查看>>
AcWing 849. Dijkstra求最短路 I(Dijkstra)
查看>>
AcWing 4. 多重背包问题(带有个数限制的完全背包问题dp)
查看>>
EventBus简单Demo实现
查看>>
监听CPU和内存占用率脚本
查看>>
添加Selinux权限
查看>>
ifconfig网络配置信息解析
查看>>
Android使用xml的shape自定义图形
查看>>
Linux下解压命令
查看>>