C++从入门到精通:1.1.3基础语法之运算符

简介: C++从入门到精通:1.1.3基础语法之运算符

在C++编程中,运算符是执行各种操作的关键工具,如算术运算、比较运算、逻辑运算和位运算等。它们允许我们对变量、常量和其他表达式进行各种计算和操作。本文将详细阐述C++中的运算符,并通过代码示例展示如何使用它们。


一、算术运算符


算术运算符用于执行基本的数学运算,如加法、减法、乘法、除法和取模等。

示例:

image.png

在上面的代码中,我们声明了两个整型变量a和b,并使用各种算术运算符对它们进行运算,然后输出结果。


二、关系运算符


关系运算符用于比较两个值的大小或是否相等,返回布尔值true或false。

示例:

image.png

在这个示例中,我们比较了两个整数变量x和y的大小关系,并输出了相应的布尔值。


三、逻辑运算符


逻辑运算符用于组合布尔表达式,以产生新的布尔值。常见的逻辑运算符包括逻辑与(&&)、逻辑或(||)和逻辑非(!)。

示例:

image.png

在上面的代码中,我们声明了两个布尔变量a和b,并使用逻辑运算符对它们进行组合,然后输出结果。


四、位运算符


位运算符直接对整数类型数据的二进制位进行操作,如按位与(&)、按位或

(|)、按位异或(^)、按位取反(~)、左移(<<)和右移(>>)。

示例:

image.png

在上面的代码中,我们声明了两个无符号整型变量a和b,并使用位运算符对它们的二进制位进行操作,然后输出结果。


五、赋值运算符


赋值运算符用于将右侧的值赋值给左侧的变量。C++提供了基本的赋值运算符(=)以及一些复合赋值运算符,如加等(+=)、减等(-=)、乘等(*=)、除等(/=)等。

示例:

image.png

在上面的代码中,我们使用了基本的赋值运算符和复合赋值运算符来对变量x进行赋值操作。


六、递增递减运算符


递增(++)和递减(--)运算符用于将变量的值增加或减少1。它们可以放在变量前面(前缀形式)或后面(后缀形式),但在用作前缀时,先执行增减操作,再返回变量的值;用作后缀时,先返回变量的原值,再执行增减操作。

示例:

image.png

在上面的代码中,我们展示了递增和递减运算符的前缀和后缀形式的使用,并说明了它们之间的区别。


七、条件运算符


条件运算符(也称为三元运算符)用于根据条件表达式的值来返回两个可能的结果之一。它的语法是 条件 ? 结果1 : 结果2

示例:

image.png

在上面的代码中,我们使用条件运算符来判断a和b中的较大值,并将其存储在maxVal变量中。


八、sizeof运算符和new/delete运算符


sizeof运算符用于获取特定类型或对象在内存中的大小(以字节为单位)。而new和delete运算符用于在运行时动态分配和释放内存。

示例:

image.png


在上面的代码中,我们使用sizeof运算符获取了int类型的大小,并使用new和delete运算符动态分配和释放了一个int类型的内存。


九、运算符优先级和结合性


在复杂的表达式中,运算符的优先级和结合性决定了运算的顺序。例如,乘法和除法优先于加法和减法,而括号内的运算则优先于括号外的运算。了解并正确使用运算符的优先级和结合性是编写正确、高效代码的关键。


总结:


C++中的运算符是实现各种计算和操作的基础工具。通过掌握各种运算符的用法和特性,我们可以编写出高效、准确的代码。在实际编程中,还需要注意运算符的优先级和结合性,以确保代码的逻辑正确性。通过不断的实践和探索,我们可以逐渐精通C++的运算符使用,为编写高质量的C++程序打下坚实的基础。

相关文章
|
2月前
|
编译器 C++
C++入门12——详解多态1
C++入门12——详解多态1
47 2
C++入门12——详解多态1
|
2月前
|
C++
C++入门13——详解多态2
C++入门13——详解多态2
89 1
|
2月前
|
存储 安全 编译器
【C++打怪之路Lv1】-- 入门二级
【C++打怪之路Lv1】-- 入门二级
32 0
|
2月前
|
自然语言处理 编译器 C语言
【C++打怪之路Lv1】-- C++开篇(入门)
【C++打怪之路Lv1】-- C++开篇(入门)
39 0
|
2月前
|
分布式计算 Java 编译器
【C++入门(下)】—— 我与C++的不解之缘(二)
【C++入门(下)】—— 我与C++的不解之缘(二)
|
2月前
|
编译器 Linux C语言
【C++入门(上)】—— 我与C++的不解之缘(一)
【C++入门(上)】—— 我与C++的不解之缘(一)
|
2月前
|
编译器 C++
C++入门11——详解C++继承(菱形继承与虚拟继承)-2
C++入门11——详解C++继承(菱形继承与虚拟继承)-2
41 0
|
2月前
|
程序员 C++
C++入门11——详解C++继承(菱形继承与虚拟继承)-1
C++入门11——详解C++继承(菱形继承与虚拟继承)-1
45 0
|
2月前
|
存储 算法 C++
C++入门10——stack与queue的使用
C++入门10——stack与queue的使用
48 0
|
2月前
|
存储 C++ 容器
C++入门9——list的使用
C++入门9——list的使用
22 0