C语言标准中,整数可以直接使用八进制、十进制、十六进制三种表示,二进制标准没有支持,但是部分编译器提供支持。

进制的表示

一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式。但是,表示一个二进制、八进制或者十六进制数字就不一样了,为了和十进制数字区分开来,必须采用某种特殊的写法,具体来说,就是在数字前面加上特定的字符,也就是加前缀。

二进制:二进制数是由0和1组成的,表示时需要在前面加上0B或0b(不区分大小写)

如int a=0b1011 int a=0b10111

注意:标准的C语言并不支持上面的二进制写法,只是有些编译器自己进行了扩展,才支持二进制数字。换句话说,并不是所有的编译器都支持二进制数字,只有一部分编译器支持,并且跟编译器的版本有关系。

下面是实际测试的结果:

  • Visual C++ 6.0 不支持。
  • Visual Studio 2015 支持,但是 Visual Studio 2010 不支持;可以认为,高版本的 Visual Studio 支持二进制数字,低版本的 Visual Studio 不支持。
  • GCC 4.8.2 支持,但是 GCC 3.4.5 不支持;可以认为,高版本的 GCC 支持二进制数字,低版本的 GCC 不支持。
  • LLVM/Clang 支持(内嵌于 Mac OS 下的 Xcode 中)。

八进制:八进制数是由0~7组成的,表示时需要在开头加上0;

如int a=017 int a=012345

十六进制:十六进制数是由0~9,字 母 A~F 或 a~f(不区分大小写)组成,表示时需要在开头加上0X或0x(不区分大小写)

如0X1ABF56 0x1254f

C语言中的二进制数,八进制数,十进制数,十六进制数相关推荐

  1. C语言中的二进制数、八进制数和十六进制数

    C语言中的整数除了可以使用十进制,还可以使用二进制.八进制和十六进制. 二进制数.八进制数和十六进制数的表示 一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式.但是,表示一个二进制.八 ...

  2. c语言能对16进制数比较大小,C语言中的二进制数、八进制数和十六进制数

    C语言中的整数除了可以使用十进制,还可以使用二进制.八进制和十六进制. 二进制数.八进制数和十六进制数的表示 一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式.但是,表示一个二进制.八 ...

  3. c语言8进制数与16进制数,C语言中的二进制数、八进制数和十六进制数

    C语言中的整数除了可以使用十进制,还可以使用二进制.八进制和十六进制. 二进制数.八进制数和十六进制数的表示 一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式.但是,表示一个二进制.八 ...

  4. 如何把单精度二进制数转换成十进制数?

    如何把单精度二进制数转换成十进制数? 单精度二进制数32位,符号1位,指数8位,尾数23位 步骤: 1.如果最高位为1,则为复数,否则为正数. 2.接下来8位为指数,减去二进制01111111(十进制 ...

  5. C语言中函数和指针的參数传递

    C语言中函数和指针的參数传递 近期写二叉树的数据结构实验.想用一个没有返回值的函数来创建一个树,发现这个树就是建立不起来,那么我就用这个样例讨论一下c语言中指针作为形參的函数中传递中隐藏的东西. 大家 ...

  6. 第三章 变量和数据类型_C语言中的二进制数、八进制数和十六进制数的输入和输出

    二进制数.八进制数和十六进制数的输入 一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式.但是,表示一个二进制.八进制或者十六进制数字就不一样了,为了和十进制数字区分开来,必须采用某种特 ...

  7. c语言中十六进制可以直接和十进制运算吗,十进制与十六进制怎么理解?,C语言中十进制数和十六进制数能直接运算吗...

    16进制 10进制 00 0 01 1 02 2 .. . 09 9 0A 10 0B 11 0C 12 0D 13 0E 14 0F 15 10 16 1F 31 20 32 将数字符号按序排列成数 ...

  8. C语言实例第1期:十进制数转换二进制数

    需求 输入一个十进制数,将这个数转换为二进制并且输出 示例代码 // // Created by 冲哥 on 2021/12/04. // #define _CRT_SECURE_NO_WARNING ...

  9. c语言十进制转换成二进制八进制十六进制,十进制数转换成二进制,八进制,十六进制(c语言)...

    利用一个函数实现十进制数转换成二进制,八进制,十六进制.利用的是栈的后进先出的思想.算法简单. #include #include #include #define STACK_INIT_SIZE 1 ...

最新文章

  1. JQuery 给DOM控件绑定和移除事件的方法
  2. linux 学习笔记 (1) —— 安装 Redhat enterprise 5
  3. 高可用 Redis 服务架构分析与搭建
  4. Oracle11g服务详细介绍及哪些服务是必须开启的?
  5. 对话实录|华为云.通信云激活无限商业潜力
  6. 只能输入正整数 以及常用的正则表达式
  7. 分数加减乘除混合运算带答案_分数分数加减乘除混合运算练习题及答案_0.doc
  8. Linux静态路由相关
  9. 简单分析帆软报表中一次HTTP请求的过程。
  10. Prometheus监控学习笔记之PromQL简单示例
  11. 常用的数据库索引优化语句总结
  12. Python3中使用flask_sqlalchemy的问题
  13. 数星星 Stars 题解
  14. 热评云厂商:品高云4.62亿元,发力行业云,掘金实属不易
  15. 谁知道下面这个视频中的特效是用什么软件做的?
  16. python colorbar字体大小_如何更改colorbar上基数和指数的字体大小?
  17. 信号完整性分析学习--12--IBIS模型
  18. File.exists()Directory.exists()
  19. 单个form表单内,不同情况显示的不同选项的单选框或多选框的情况下,判断单选框是否存在未选择一个选项情况,并进行提示。
  20. linux查看主板最大内存容量,Linux 查看内存插槽数、最大容量的方法

热门文章

  1. 主流CTR预估模型的演化及对比
  2. 计算机的性能指标完全有CPU决定,计算机的性能主要由CPU的哪些指标决定
  3. 官网下载历史版本Android studio
  4. 免杀手法学习(纯笔记为了方便查询基本是记录大佬链接水文)
  5. 《Java核心技术》作者亲授视频免费看,学习Java更轻松 (文中福利)
  6. 用html做一个拍拍网界面视频,html制作网页必做入门练习题一教程文件.ppt
  7. 使用SQL除掉文本中特殊的ascll字符比如Enter,Tab,空格键
  8. ruijie交换机lacp动态_华为交换机LACP模式(动态)链路聚合配置示例
  9. voltDB 集群 配置
  10. Ganglia_简述