• 2018-10-27 22:44:33 c language


    2018-10-27  22:44:33 c language

    1. 标准的C语言并不支持上面的二进制写法,只是有些编译器自己进行了扩展,才支持二进制数字。并不是所有的编译器都支持二进制数字,只有一部分编译器支持,并且跟编译器的版本有关系。
    2. 十六进制数字的表示用到了英文字母,有大小写之分,要在格式控制符中体现出来:
    3. 八进制数字和十进制数字不区分大小写,所以格式控制符都用小写形式。如果你比较叛逆,想使用大写形式,那么行为是未定义的,
    4. 输出二进制,八进制,十进制,十六进制的时候为了更好的区分你到底输入的进制,可以通过在输出的时候加#。
    C语言中的正负数及其输出
    • C语言规定,把内存的最高位作为符号位。
    • 在编程语言中,计数往往是从0开始,例如字符串 "abc123",我们称第 0 个字符是 a,第 1 个字符是 b,第 5 个字符是 3。这和我们平时从 1 开始计数的习惯不一样,大家要慢慢适应,培养编程思维。
    • short、int 和 long 类型默认都是带符号位的,符号位以外的内存才是数值位。如果只考虑正数,那么各种类型能表示的数值范围(取值范围)就比原来小了一半。
    • 但是在很多情况下,我们非常确定某个数字只能是正数,比如班级学生的人数、字符串的长度、内存地址等,这个时候符号位就是多余的了,就不如删掉符号位,把所有的位都用来存储数值,这样能表示的数值范围更大(大一倍)。
    • C语言允许我们这样做,如果不希望设置符号位,可以在数据类型前面加上 unsigned 关键字。例如:
      1. unsigned int b = 1002;成为无符号整数1002.
    • 使用了 unsigned 后只能表示正数,不能再表示负数了。
      无符号数的输出
  • 相关阅读:
    Linux基础命令---arch
    JSON漫谈
    django中外键关联表的查询随笔
    <django中render_to_response的可选参数和使用方法>
    有趣的Redis:缓存被我写满了,该怎么办?
    2020全球C++及系统软件技术大会成功落下帷幕
    AWS 宣布创建 Elasticsearch 和 Kibana 分支
    Flutter开发指南之理论篇:Dart语法05(单线程模型,事件循环模型,Isolate)
    自定义注解!绝对是程序员装逼的利器!!
    Java8 Stream
  • 原文地址:https://www.cnblogs.com/lzp123456-/p/9863934.html
Copyright © 2020-2023  润新知