📜  c++ 求值表达式 - C++ (1)

📅  最后修改于: 2023-12-03 15:14:00.851000             🧑  作者: Mango

C++ 求值表达式

在 C++ 中,可以使用数值、变量、运算符等组成表达式。求值表达式就是计算这些表达式的值。

基本数据类型

C++ 中的基本数据类型主要包括整型、浮点型、字符型和布尔型。其中,整型包括 intshortlonglong long;浮点型包括 floatdouble;字符型是 char;布尔型是 bool

int x = 10;
float y = 3.14;
char c = 'a';
bool b = true;
运算符

C++ 中的运算符可以分为算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符等。

算术运算符

算术运算符用于数值计算,例如加法 +、减法 -、乘法 *、除法 /、取反 -(负号)和取模 %(求余数)。

int a = 10, b = 3;

int c = a + b; // c = 13
int d = a - b; // d = 7
int e = a * b; // e = 30
int f = a / b; // f = 3
int g = -a;    // g = -10
int h = a % b; // h = 1
关系运算符

关系运算符用于比较两个数据的大小关系,例如大于 >、小于 <、等于 ==、不等于 !=、大于等于 >= 和小于等于 <=

int a = 10, b = 3;

bool c = a > b;  // c = true
bool d = a < b;  // d = false
bool e = a == b; // e = false
bool f = a != b; // f = true
bool g = a >= b; // g = true
bool h = a <= b; // h = false
逻辑运算符

逻辑运算符用于处理逻辑值 truefalse,例如与 &&、或 || 和非 !

bool a = true, b = false;

bool c = a && b; // c = false
bool d = a || b; // d = true
bool e = !a;     // e = false
位运算符

位运算符用于处理二进制位,例如按位与 &、按位或 |、异或 ^、取反 ~、左移 << 和右移 >>

int a = 0b1100, b = 0b1010;

int c = a & b;  // c = 0b1000
int d = a | b;  // d = 0b1110
int e = a ^ b;  // e = 0b0110
int f = ~a;     // f = 0b0011
int g = a << 2; // g = 0b110000
int h = b >> 1; // h = 0b0101
赋值运算符

赋值运算符用于给变量赋值,例如等于 =、加等于 +=、减等于 -=、乘等于 *=、除等于 /= 和模等于 %=

int a = 10, b = 3;

a += b; // a = 13
a -= b; // a = 10
a *= b; // a = 30
a /= b; // a = 10
a %= b; // a = 1
表达式求值

在 C++ 中,可以使用表达式计算出一个值。例如:

int a = 10, b = 3;

int c = a + b * 2; // c = 16

表达式求值的顺序是由运算符的优先级和结合性确定的。下面是 C++ 中的运算符优先级和结合性:

| 优先级 | 运算符 | 结合性 | | ------ | ------------ | ------ | | 1 | () | 左右 | | 2 | ++-- | 右 | | 3 | +-!~ | 右 | | 4 | */% | 左 | | 5 | +- | 左 | | 6 | <<>> | 左 | | 7 | <><=>= | 左 | | 8 | ==!= | 左 | | 9 | & | 左 | | 10 | ^ | 左 | | 11 | \| | 左 | | 12 | && | 左 | | 13 | || | 左 | | 14 | ?: | 右 | | 15 | =+=-=*=/=%=<<=>>=&=^=\|= | 左 |

可以使用 () 改变优先级,例如:

int a = 10, b = 3;

int c = (a + b) * 2; // c = 26
小结

本文介绍了 C++ 中的数据类型、运算符和表达式求值。在实际编程中,需要灵活运用这些知识,完成各种任务。