C++从零基础到入门(1)-2
https://developer.aliyun.com/article/1507992
三、标识符
1.标识符的命名规则:(必须要遵守,否则编译不能通过)
- 由26个英文字母大小写,0-9,_(下划线)组成。
- 数字不可以开头。
- c++中是大小是不一样的,长度无限制
- 不可以使用关键字
- 不能用连续两个下划线开头,也不能以下划线加大写字母开头,这些被C++保留给标准库使用
- 函数体外的标识符,不能以下划线开头。
- 尽量有实际意义
- 变量名一般用小写字母
- 自定义类名一般以大写字母开头
- 如果包涵多个单词,一般使用下划线分隔,或者将后面的单词首字母大写
2.c++中的关键字:
四、基本数据类型
1.整型:
- short(2字节=16bit)(-2^15~2^15-1)
- int (4字节=32bit)(常用)(-2^31~2^31-1)(约21亿)
- ong (4字节=32bit)(-2^31~2^31-1)
- long long (8字节 = 64bit) (-2^63~2^63-1)
字节(byte):是计算机用于计量存储容量的基本单位,一个字节等于8bit;
位(bit):是数据存储的最小单位。二进制数系统中,每个0或者1就是一个位,叫做bit(比特),其中8bit就称为一个字节
转换关系:
- 8 bit = 1Byte
- 1024 Byte = 1 KB
- 1024 KB = 1 MB
- 1024 MB = 1 GB
- 1024 GB = 1 TB
2.浮点型:
- float(单精度)(4字节)
- 表示数的范围大于long型(声明float型变量必须要以“f”或者“F”结尾)
- double(双精度)(8字节)
- long double(长双精度) (8字节)
3.字符型:
char(1字符=2字节)
字符型变量的三种表现方式:
- 使用一对( '')括起来的单个字符,内部只能写一个字符。
- 直接使用unicode值来表示字符型常量:'\uXXXX'——unicode编码集;故一个字符可以存储一个字母,一个汉字,或者其他书面的一个字符
- 使用转义字符'\'来将其后的字符转变为特殊字符型常量——‘\n’--换行符 '\t'--制表符
- 字符集:ASCII码(a--97、A--65、0--48)、UTF-8
4.布尔型boolean——只能取两个值:true,false
常使用在流程控制语句中。比如,条件判断、循环结构等
我们不谈boolean类型所占的空间大小。但是真正在内存中分配的话,使用的是4个字节
五、C++ 运算符
C++的基础运算符和C类似,比如:算术运算符、关系运算符、逻辑运算符、位运算符。
C++ 的算术运算符用于处理基本的数学运算。主要包括:加、减、乘、除、取余、自增、自减。
需要注意的是:
除法运算符 /,如果操作数都是整数,那么结果也是整数,小数部分会被舍去。如果想得到浮点数的结果,可以将操作数转为 float 或 double 类型。
取模运算符 % 只适用于整数操作数。如果你需要对浮点数进行类似操作,可以使用函数 fmod()(需引入 <cmath> 头文件)。
在使用这些算术运算符时,请确保操作数遵循相应的数据类型规则,并避免因操作数类型不当导致的错误。同时,在进行数学运算时要注意防止溢出。
2.关系运算符
C++ 的关系运算符用于比较两个操作数之间的关系。关系运算符在条件判断中非常常用,通常用于控制结构(如 if、while)中的表达式。主要包括:等于、不等于、大于、小于、大于等于、小于等于。
需要注意的是:
在使用关系运算符时,请确保操作数具有可比较的类型。同时注意,如果操作数是浮点数,可能会因浮点数精度问题导致比较结果不如预期。通常建议对浮点数的比较使用误差范围,而非直接进行关系运算。
3.逻辑运算符
C++ 的逻辑运算符用于连接或改变多个布尔表达式的值。逻辑运算符在控制结构(如 if、while)中的条件判断语句中广泛使用。主要包括:与、或、非。
需要注意的是:
在使用逻辑运算符时,C++ 采用短路求值策略,即只在需要时执行后续的布尔表达式。例如,对于逻辑与运算 &&,如果第一个表达式为 false,则整个表达式必定为 false,无需计算第二个表达式。这种优化策略有助于提高效率,但可能导致一些副作用被跳过。因此,谨慎考虑布尔表达式间的顺序与副作用。
4.位运算符
C++ 的位运算符用于操作整数类型数据的二进制位。位运算符处理的对象是整数在内存中的位表示。主要包括:位与、位或、按位取反、异或、左移、右移。
需要注意的是:
位运算符仅适用于整数类型(如 int、long、char 等)。在进行位运算时,需要确保操作数遵循相应的数据类型规则。同时,当在 unsigned 类型上执行位移运算时,请特别注意不要引入符号扩展。在使用有符号整数时,注意有符号整数的位移运算符可能会导致未定义的行为。
5.其它
当然还有一些其它的运算符,比如:赋值、逗号、下标、取地址、解引用,这些后续再总结。