`

c++运算符

c++ 
阅读更多
转载:http://zhai89.diandian.com/post/2011-10-24/6149042




C++中的一些符号

() 函数调用
[] 数组下标运算符
-> 指向成员运算符
. 成员运算符
:: 域运算符
++ 自增运算符
-- 自减运算符
! 逻辑非运算符
~ 按位取反运算符
- 负号
+ 正号
* 指针
& 取地址
(type) 类型转换
sizeof 长度
delete
* 乘法
/ 除法
% 求余
+ 加法
_ 减法
<< 按位左移
>> 按位右移
<<= 关系
>>= 关系
== 等于
!= 不等于
& 按位与
| 按位或
&& 逻辑与
|| 逻辑或
?: 条件


= 以下全是赋值运算符
+=
-=
*=
/=
%=
&=
^=
|=
<<=
>>=

THROW 抛出异常运算符

, 逗号运算符


c语言运算符号


1级优先级 左结合
() 圆括号
[] 下标运算符
-> 指向结构体成员运算符
. 结构体成员运算符
2级优先级 右结合
! 逻辑非运算符
~ 按位取反运算符
++ 自增运算符
-- 自减运算符
- 负号运算符
(类型) 类型转换运算符
* 指针运算符
& 地址与运算符
sizeof 长度运算符
3级优先级 左结合
* 乘法运算符
/ 除法运算符
% 取余运算符
4级优先级 左结合
+ 加法运算符
- 减法运算符
5级优先级 左结合
<< 左移运算符
>> 右移运算符
6级优先级 左结合
<、<=、>、>= 关系运算符
7级优先级 左结合
== 等于运算符
!= 不等于运算符
8级优先级 左结合
& 按位与运算符
9级优先级 左结合
^ 按位或运算符 <-----------------------错误! 应该是 按位异或运算符
10级优先级 左结合
| 按位异或运算符 <--------------------错误! 应该是 按位或运算符
11级优先级 左结合
&& 逻辑与运算符
12级优先级 左结合
|| 逻辑或运算符
13级优先级 右结合
? : 条件运算符
14级优先级 右结合
=    +=   -=   *=   /=   %=   &=   ^=   |=   <<=   >>=  全为赋值运算符
15级优先级 左结合
, 逗号运算符

优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。
所有的优先级中,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。其它的都是从左至右结合。
具有最高优先级的其实并不算是真正的运算符,它们算是一类特殊的操作。()是与函数相关,[]与数组相关,而->及.是取结构成员。
其次是单目运算符,所有的单目运算符具有相同的优先级,因此在我认为的 真正的运算符中它们具有最高的优先级,又由于它们都是从右至左结合的,因此*p++与*(p++)等效是毫无疑问的。
接下来是算术运算符,*、/、%的优先级当然比+、-高了。
移位运算符紧随其后。
其次的关系运算符中,< <= > >=要比 == !=高一个级别,不大好理解。
所有的逻辑操作符都具有不同的优先级(单目运算符出外,!和~)
逻辑位操作符的"与"比"或"高,而"异或"则在它们之间。
跟在其后的&&比||高。
接下来的是条件运算符,赋值运算符及逗号运算符。
在C语言中,只有4个运算符规定了运算方向,它们是&&、| |、条件运算符及赋值运算符。
&&、| |都是先计算左边表达式的值,当左边表达式的值能确定整个表达式的值时,就不再计算右边表达式的值。如 a = 0 && b; &&运算符的左边位0,则右边表达式b就不再判断。
在条件运算符中。如a?b:c;先判断a的值,再根据a的值对b或c之中的一个进行求值。
赋值表达式则规定先对右边的表达式求值,因此使 a = b = c = 6;成为可能。
分享到:
评论

相关推荐

    C++运算符优先级表

    C++运算符优先级表 C++ 运算符优先级表是一份非常重要的参考资源,对于C++开发者来说是必不可少的。本文将详细介绍C++运算符优先级表,并对每个运算符进行解释。 一、括号运算符 括号运算符的优先级最高,包括...

    C++运算符重载友元函数实例

    在给定的实例中,你将学习如何实际应用这些概念,通过成员函数和非成员函数重载C++运算符,以及如何使用友元函数来实现特定的运算行为。通过练习和理解这些例子,你将更好地掌握C++中运算符重载和友元函数的使用。

    C++运算符优先级 .pdf

    C++运算符优先级整理

    c和c++运算符优先级

    ### C和C++运算符优先级详解 在编程语言中,理解运算符的优先级是至关重要的,因为这直接影响到表达式的计算顺序和结果。C和C++作为两种广泛使用的编程语言,它们共享大部分相同的运算符及其优先级规则,但也有细微...

    C++运算符重载规则详解

    C++允许重载的运算符和不允许重载的运算符 C++中绝大部分的运算符允许重载,具体规定见表 ...1) C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载。 例如,有人觉得BASIC中用“**“作为幂运算符很方便

    C++运算符-循环语句

    ### C++运算符与循环语句详解 #### 运算符概述 在C++编程语言中,运算符是用来执行特定类型的计算或者数据处理任务的符号。根据不同的功能和作用范围,C++中的运算符可以分为以下几类: 1. **算术运算符** - **...

    C++运算符重载 详细介绍PPT

    详细介绍 C++运算符重载 的PPT 文中部分内容: 下标运算符“[ ]”重载 C++把下标运算符[ ]看成一个双目运算符,其操作数为&lt;基本表达式&gt;和&lt;表达式&gt;,对应的运算符为operator[ ],必须重载为一个成员函数。对于下标...

    C++ 运算符优先级列表

    ### C++运算符优先级详解 #### 一、引言 在C++编程语言中,了解运算符的优先级对于正确地构造表达式至关重要。不同的运算符根据其优先级顺序来决定表达式的计算顺序,这直接影响到程序的执行结果。本篇文章将详细...

    c++运算符重载矩阵运算

    "c++运算符重载矩阵运算" c++运算符重载矩阵运算是指在c++语言中对矩阵进行运算的操作,包括加、减、乘、转置、赋值等操作。这些操作都是通过重载运算符来实现的。 首先,我们需要定义一个Matrix类,该类有三个...

    C++运算符.doc

    C++运算符是编程语言中不可或缺的部分,它们用于执行各种计算、逻辑判断和数据操作。了解C++运算符的优先级对于编写正确无误的代码至关重要。运算符优先级决定了运算的顺序,避免了混淆和错误。以下是C++运算符...

    C++运算符重载课件

    中国农业大学C++课程课件,信息与电气工程学院学生专用。

    visuall C++ 运算符重载详细总结

    "Visual C++ 运算符重载详细总结" Visual C++ 运算符重载是指在 C++ 编程语言中对已有的运算符进行重新定义,以适应自定义的数据类型和操作。这种技术可以使得程序员能够使用熟悉的运算符来操作自定义的数据类型,...

    C++运算符与结合性

    C++运算符与结合性详解 C++语言中有多种运算符,每种运算符都有其特定的优先级和结合方向。了解这些运算符的优先级和结合方向可以帮助程序员编写更加简洁、可读性强的代码。 1. 域运算符(::): 域运算符(::)...

    C++运算符优先级汇总表

    C++运算符优先级是编程过程中非常重要的概念,它规定了不同运算符在表达式中的执行顺序。了解这些优先级可以帮助我们正确地编写和理解代码,避免因运算顺序错误而导致的程序异常。以下是对C++中各类运算符优先级的...

    C++运算符大全及详解.doc

    C++运算符大全及详解 C++运算符大全及详解是指在C++编程语言中使用的各种运算符,包括算术运算符、比较运算符、逻辑运算符、赋值运算符等。这些运算符都是构成C++语言的基本元素,用于实现各种计算和逻辑操作。 在...

    c++运算符优先级,word版本表格

    C++ 运算符优先级详解 C++ 语言提供了多种运算符,每种运算符都有其优先级和结合律。了解运算符的优先级和结合律对于编写正确的 C++ 程序至关重要。 结合律 在 C++ 中,运算符的结合律是指当多个运算符出现在同一...

    C++运算符重载课件PPT及实例

    在C++编程语言中,运算符重载是一个关键特性,它允许我们为已存在的运算符赋予新的含义,以便在自定义类型上使用...通过对C++运算符重载的深入理解和实践,你可以编写出更加自然、直观的代码,提升代码质量和可维护性。

    C++运算符重载的课件

    C++运算符重载的课件 C++运算符重载是C++程序设计中一个非常重要的概念,它允许用户自定义的数据类型以一种更简洁的方式工作,使得代码更加简洁易读。运算符重载使得用户可以定义自己的运算符,以便更好地描述问题...

    C++运算符大全与详解.docx

    C++运算符是编程语言中的核心组成部分,它们用于执行各种计算和逻辑操作。在这个文档中,我们将深入探讨C++中的运算符,包括算术运算符、赋值运算符以及比较运算符。 首先,算术运算符是C++中最基本的运算符,包括`...

Global site tag (gtag.js) - Google Analytics