亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

C++ 运算符全解析:类型、示例与示例程序

什么是运算符?

在 C++ 中,运算符 是对一个或多个操作数执行操作的符号。运算符可分为算术、逻辑、关系、位运算、赋值等类别。

示例:

a = x + y;

此处 x 和 y 是操作数,+ 是加法运算符。编译器将 x 与 y 相加并将结果存入 a。

本教程你将学到:

C++ 运算符的六大类别

  1. 算术运算符
  2. 关系运算符
  3. 逻辑运算符
  4. 位运算符
  5. 赋值运算符
  6. 其他运算符

算术运算符

执行数学计算。

运算符说明
+两数相加
-第一数减第二数
*两数相乘
/被除数除以除数
%求除法余数
++整数加 1
--整数减 1

示例程序:

#include <iostream>
using namespace std;
int main() {
    int a = 11, b = 5, c;
    cout << "a + b is :" << a+b << endl;
    cout << "a - b is :" << a-b << endl;
    cout << "a * b is :" << a*b << endl;
    cout << "a / b is :" << a/b << endl;
    cout << "a % b is :" << a%b << endl;
    cout << "a++ is :" << a++ << endl;
    cout << "a-- is :" << a-- << endl;
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

代码解释略。

关系运算符

比较操作数并返回布尔结果。

运算符说明
==判等
!=判不等
>大于
<小于
>=大于等于
<=小于等于

示例程序:

#include <iostream>
using namespace std;
int main() {
    int a = 11, b = 5;
    cout << "a=11, b=5" << endl;
    if (a == b) cout << "a == b is true" << endl;
    else cout << "a == b is false" << endl;
    if (a < b) cout << "a < b is true" << endl;
    else cout << "a < b is false" << endl;
    if (a > b) cout << "a > b is true" << endl;
    else cout << "a > b is false" << endl;
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

逻辑运算符

组合布尔表达式。

运算符说明
&&逻辑与 – 两操作数均非零为真
||逻辑或 – 至少一操作数非零为真
!逻辑非 – 取反布尔值

示例程序:

#include <iostream>
using namespace std;
int main() {
    int a = 5, b = 2, c = 6, d = 4;
    if (a == b && c > d) cout << "a equals to b AND c is greater than d\n";
    else cout << "AND operation returned false\n";
    if (a == b || c > d) cout << "a equals to b OR c is greater than d\n";
    else cout << "Neither a is equal to b nor c is greater than d\n";
    if (!b) cout << "b is zero\n";
    else cout << "b is not zero";
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

位运算符

对整数值的单个位执行操作。

运算符说明
&按位与 – 两位均为 1 结果为 1
|按位或 – 至少一位为 1 结果为 1
^按位异或 – 两位不同结果为 1
<<左移 – 位左移,低位补 0
>>右移 – 位右移,丢弃低位
~按位非 – 翻转所有位

示例程序:

#include <iostream>
using namespace std;
int main() {
    unsigned int p = 60; // 0011 1100
    unsigned int q = 13; // 0000 1101
    int z = 0;
    z = p & q; cout << "p&q is : " << z << endl; // 12
    z = p | q; cout << "p|q is : " << z << endl; // 61
    z = p ^ q; cout << "p^q is : " << z << endl; // 49
    z = ~p; cout << "~p is : " << z << endl; // -61
    z = p << 2; cout << "p<<2 is: " << z << endl; // 240
    z = p >> 2; cout << "p>>2 is : " << z << endl; // 15
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

赋值运算符

给变量赋值,常结合算术操作。

运算符说明
=简单赋值
+=加后赋值
-=减后赋值
*=乘后赋值
/=除后赋值

示例程序:

#include <iostream>
using namespace std;
int main() {
    int x = 5;
    cout << "Initial value of x is " << x << "\n";
    x += 5; cout << "x += 5 gives :" << x << "\n";
    x -= 5; cout << "x -= 5 gives : " << x << "\n";
    x *= 5; cout << "x *= 5 gives :" << x << "\n";
    x /= 5; cout << "x /= 5 gives : " << x << "\n";
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

其他运算符

sizeof 运算符

返回类型或对象的字节大小。

示例:

#include <iostream>
using namespace std;
int main() {
    cout << "Size of int : " << sizeof(int) << "\n";
    cout << "Size of char : " << sizeof(char) << "\n";
    cout << "Size of float : " << sizeof(float) << "\n";
    cout << "Size of double : " << sizeof(double) << "\n";
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

逗号运算符

顺序执行多个表达式,返回最后一个表达式的值。

示例:

#include <iostream>
using namespace std;
int main() {
    int x, y;
    y = 100;
    x = (y++, y + 10, 99 + y);
    cout << x;
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

条件运算符

又称三元运算符,根据条件返回两个表达式之一。

语法:condition ? expr1 : expr2

示例:

#include <iostream>
using namespace std;
int main() {
    int a = 1, b;
    b = (a < 10) ? 2 : 5;
    cout << "value of b: " << b << endl;
    return 0;
}

输出:

C++ 运算符全解析:类型、示例与示例程序

运算符优先级

单一表达式中出现多个运算符时,优先级规则决定求值顺序。从高到低:

(), [], *, /, %, +/-, <<, >>, ==, !=, ^, |, &&, ||, ?:, =, +=, -=, *=, /=

总结

C语言

  1. 快速成型详解:类型、工艺与优势
  2. 生物芯片:定义、类型与现代生物技术应用
  3. C#运算符——C#运算符全面指南
  4. 掌握 C++ 运算符:六大类型全解析与实战示例
  5. 掌握 C++ switch-case:语法、用法与实战示例
  6. C++ 动态数组分配实战指南:new/delete、初始化、扩容与内存管理
  7. C++ 运算符重载实战指南:语法、方法、限制与代码示例
  8. C++ 结构体详解:定义、初始化、指针、函数参数与局限性
  9. 掌握 C++ std::list:语法、函数与实战示例
  10. C++ Struct 与 Class 核心差异、语法及最佳实践
  11. C# 抽象类实战教程:从定义到派生的完整代码示例
  12. C++重载机制深度解析:函数重载与运算符重载全攻略