Skip to content

字面量

[[C]] 几个常见的数据类型一定要知道它们占几个字节的大小。并且在表达式中也要时刻注意常量的类型(如第九题)。

==字面量即一个值的表示方法==:

  • 整型:123 表示十进制 123;0123 是八进制的表示方法(开头一定加 0,0123 等价于 83),0x123 是十六进制的表示方法(开头一定加 0x,0x123 等价于 291)
  • 字符型:
    • 记住一个字符类型实际上就相当于一个字节的整型,所以可以通过数值来表示:char c = 65; 就相当于 char c = 'A';
    • 同时 在引号里有转义的效果,比如 '\n' '\t' 都代表一个字符,而 '\' 才会表示一个 字符;
    • 再进一步, 后面可以接最多三个数字来使用八进制表示一个字节,且遇到 0-7 范围之外的数字会结束当前字节,比如 '\101' 也表示 'A',而 '\08' 因为 8 超过了八进制范围,所以这是两个字符放到了一个单引号里,不是正确的用法,如果写成字符串,则 "\08" 表示两个字符;
    • \x 后面接 0-9A-F 字符通过十六进制来表示一个字符。不过并不会有长度限制,比如 '\x00000041' 也是一个字符,同样遇到范围外的字符就结束。

其实有两种表示方法,一种是用整数来表达,另一种是用字符来表达

  • 用整数来表达: 013代表是八进制中的13,0x13是十六进制,直接写是十进制
  • 用字符来表达:'\x61', '\61'分别表示的是十六进制下的与八进制下的61的值