C2 处理数据

C++命名规则

  • 名称中只能使用字母数字下划线_)。
  • 名称的第一个字符不能是数字
  • 字符区分大小写
  • 不能使用C++关键字作为名称。
  • 以两个下划线或以下划线和大写字母开头的名称被保留给实现使用。以一个下划线开头的名称被保留给实现,作为全局标识符。
  • C++对名称的长度没有限制,名称中所有的字符都有意义,但有些平台有长度限制

基本数据类型

基本数据类型主要有两大类:整型浮点型。整型中主要有shortintlonglong long,这些都是带符号类型,能够表示正负,在这些类型前加unsigned就是无符号类型,unsigned shortunsigned int(或unsigned)、unsigned longunsigned long long

浮点型主要有三类,分别是floatdoublelong double(C90新增)

整型字面量的进制表示

进制表示方式
二进制前两位为 0b0B
八进制第一位数字为 0,第二位数字为 1~7
十进制第一位数字为 0~9
十六进制前两位为 0x0X

C++如何确定常量的类型

对于十进制字面值,C++从intlonglong long中选择能存储该常量的最小类型

对于八进制十六进制字面值,C++会从intunsigned intlongunsigned longlonglong longunsigned long long中选择能存储该常量的最小类型

char 类型

char在默认情况下既不是没有符号,也不是有符号。是否有符号由C++实现决定。

如果将char看做数值类型,那么char是否有符号的差异就比较重要了。

signed char能表示-128到127,而unsigned char能表示0到255

printf转换符

转换符意义
a, A十六进制形式输出浮点数(C99 新增)。
x, X十六进制形式输出无符号整数(不输出前缀Ox)
d十进制形式输出带符号整数(正数不输出符号)
u以十进制形式输出无符号整数
o八进制形式输出无符号整数(不输出前缀0)
f小数形式输出单、双精度实数
e, E指数形式输出单、双精度实数
g, G%f%e中较短的输出宽度输出单、双精度实数
lu32位无符号整数
llu64位无符号整数
跟形式有关的
转换符意义
c输出单个字符
s输出字符串
p输出指针地址
不是数字类型的