#include <iostream>

using namespace std;

void showIntBit(int a);
void showDoubleBit(double a1);
void showFloatBit(float a1); int main()
{
int a1 = ;
double a2 = 20.0;
float a3 = 20.0f; cout << "" << sizeof(a1) <<" "<<sizeof(a2)<< " "<<sizeof(a3)<<endl;
showIntBit(a1);
showDoubleBit(a2);
showFloatBit(a3); system("pause");
return ;
} //按位置取元素判断 int 4个字节,char 1个字节, 1个字节8位
void showIntBit(int a1) {
char *c1 = (char *)&a1;
char byte1;
int len1 = ;
if (a1 <= )
{
len1 = ;
}
else if (a1 > && a1 <= )
{
len1 = ;
}
else if (a1 > && a1 < )
{
len1 = ;
}
else
{
len1 = ;
} for (int i = ; i<len1; i++)
{
byte1 = *c1;
for (int j = ; j<; j++)
{
if (0b10000000 & byte1)
{
cout << "";
}
else
{
cout << "";
}
byte1 = byte1 << ;
}
cout << " ";
c1++;
}
cout << endl;
} void showDoubleBit(double val1)
{
unsigned idx;
unsigned char arr[sizeof val1]; memcpy(arr, &val1, sizeof val1); for (idx = CHAR_BIT * sizeof val1; idx--; )
{
putc(
(arr[idx / CHAR_BIT] & (1u << (idx%CHAR_BIT)))
? ''
: ''
, stdout
);
} cout << endl;
} void showFloatBit(float val1) {
unsigned idx;
unsigned char arr[sizeof val1]; memcpy(arr, &val1, sizeof val1); for (idx = CHAR_BIT * sizeof val1; idx--; )
{
putc(
(arr[idx / CHAR_BIT] & (1u << (idx%CHAR_BIT)))
? ''
: ''
, stdout
);
} cout << endl;
}

4 8 4
00010100
0100000000110100000000000000000000000000000000000000000000000000
01000001101000000000000000000000
请按任意键继续. . .

C++ int double float对应的长度以及二进制的更多相关文章

  1. c++之常见数据类型(int,double,float,long double long long 与std::string之间)相互转换(含MFC的CString、含C++11新特性函数)

    --- 已经通过初步测试---- ------------------ 下面的是传统常见数据类型的转换(非c++11)---------------  std::string 与其他常用类型相互转换, ...

  2. long int double float

    参考:https://blog.csdn.net/ideality_hunter/article/details/78432486 long是长整型,64位 int是短整型,32位 double是双精 ...

  3. string 与 int double 的转化

    #include <iostream> #include <string> #include <sstream> using namespace std; int ...

  4. mysql基础之double,float长度标度定义

    MySQL类型float double decimal的区别 float数值类型用于表示单精度浮点数值,而double数值类型用于表示双精度浮点数值,float和double都是浮点型,而decima ...

  5. 别在int与float上栽跟头(转)

    源:http://www.cnblogs.com/luguo3000/p/3719651.html int与float是我们每天编程都用的两种类型,但是我们真的足够了解它们吗.昨天在博客园看到一个比较 ...

  6. 别在int与float上栽跟头

    int与float是我们每天编程都用的两种类型,但是我们真的足够了解它们吗.昨天在博客园看到一个比较老的笑话: “昨天晚上下班回家,一民警迎面巡逻而来.突然对我大喊:站住!民警:int 类型占几个字节 ...

  7. Java 浮点数精确性探讨(IEEE754 / double / float)与 BigDecimal 解决方案

    一.抛砖引玉 一个简单的示例: double a = 0.0; IntStream.range(0,3).foreach(i->a+=0.1); System.out.println(a); / ...

  8. java中浮点数的比较(double, float)(转)

    问题的提出:如果我们编译运行下面这个程序会看到什么? public static void main(String args[]){ System.out.println(0.05+0.01); Sy ...

  9. double float的精度问题

    三部曲 1: #include <iostream> #include <stdio.h> #include <string.h> using namespace ...

随机推荐

  1. 【转】学习ARM为什么首选IMAX6??

    ARM作为目前嵌入式行业主流的架构,已经让越来越多从事电子行业的朋友了解,并且高校对于嵌入式的学习,很多直接从ARM开始,目前ARM的嵌入式培训也越来越多,足以说明现在嵌入式行业有多火.目前主流的AR ...

  2. seaborn(2)---画分类图/分布图/回归图/矩阵图

    二.分类图 1. 分类散点图 (1)散点图striplot(kind='strip') 方法1: seaborn.stripplot(x=None, y=None, hue=None, data=No ...

  3. POJ 2762Going from u to v or from v to u?(强联通 + 缩点 + 拓扑排序)

    [题意]: 有N个房间,M条有向边,问能否毫无顾虑的随机选两个点x, y,使从①x到达y,或者,②从y到达x,一定至少有一条成立.注意是或者,不是且. [思路]: 先考虑,x->y或者y-> ...

  4. thinkPHP5框架路由常用知识点汇总

    一.路由的模式 普通模式(默认pathinfo,不解析路由) 'url_route_on' => false 混合模式(pathinfo+解析路由) 'url_route_on' => t ...

  5. 28、Python网络编程

    一.基于TCP协议的socket套接字编程 1.套接字工作流程 先从服务器端说起.服务器端先初始化Socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept阻塞,等待客 ...

  6. wordpress列表分页添加Numeric数字分页

    wordpress分类页的分页导航默认是上一页下一页,有时我们想让它显示数字分页要如何操作呢?大多数想着是安装一个插件就可以解决了,作为一位喜欢研究的开发者自然就会用代码来实现了,下面随着ytkah一 ...

  7. IDEA 中 Git Commit message 编写

    IDEA安装插件 Git Commit Template 1. HeaderHeader的部分只有一行,包括三个字段: type(必需), scope(可选), subject(必需) 对应到idea ...

  8. 阿里巴巴Java开发手册(命名规范/常量定义篇)——查自己的漏-补自己的缺

    一.编程规约 (一) 命名规约 1. [强制]所有编程相关命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束. 反例: _name / __name / $Object / name_ / ...

  9. sublme text 3 快捷键

    1. 插件 codeFormatter 格式化插件 json格式化MAC快捷键  control + option + F

  10. Struct Socket详细分析(转)

    原文地址:http://anders0913.iteye.com/blog/411986 用户使用socket系统调用编写应用程序时,通过一个数字来表示一个socket,所有的操作都在该数字上进行,这 ...