C++
数据类型
- 基本类型
- 整型(char表示16位无符号整数;short是16位有符号整数)
- 字符型
- 浮点型(实型)
- 枚举类型
- 构造类型
- 数组类型
- 结构体类型
- 共用体类型
- 指针类型
- 指针类型的值表示的是某个内存地址
- 空类型
- 主要用于函数返回空值;函数参数的限定
浮点型(实型)
如果小数后面不加L或F修饰,那么默认是双精度,即保证15有效数字。L、F大小写不敏感
FloatNum=1.23e2F //单精度
LongDoubleNum=5.45e-1L //长双精度
单精度(float):占4个字节,能保证6位有效数字
双精度(double):占8个字节,能保证15位有效数字
长双精度(Long double):10个字节
字符型常量
-
字符常量
- 只能且必须包含一个字符,不能是字符串;区分大小写;
‘’
这对单直撇代表着定界符,不属于字符常量中的一部分。
-
字符串常量
- 双引号括起来的。
关系表达式
!=
、>
、<
、>=
、<=
、
优先级(高到低):!=
优先级最高,其余按照从左之右的顺序。
逻辑运算符和逻辑表达式
&& 逻辑与
|| 逻辑或
! 单目逻辑非
优先级(高到低): ! , &&, ||
逻辑表达式
表达式 逻辑运算符 表达式
printf("%s:",5<1||2) //这句话的意思是:5<1和2这两个条件,只要之中一个为真就是真
printf("%s:",55<1&&2) // 55<1和2这俩条件必须都为真,才为真。
逗号运算符与逗号表达式
value=2+5,2+3,5+7 // 结果是7,而不是12,原因是赋值运算符优先级大于逗号运算符
value=(2+5,2+3,5+7); // 结果是12,原因是改变了它的优先级
#include <stdio.h>
int main() {
int iInt = 10;
int iInt2 = 20;
int count1 = iInt++;iInt2+10;
int count2 = (iInt++,iInt2+iInt);
printf("%d",count1);
printf("%d",count2);
return 1;
}