C++中的特殊运算符

上一节介绍了有关C++中的位运算符(),这一节继续学习一下C++中的其它运算符。以加深对各种运算符的理解。

1.++自增、- - 自减

此运算符可分为前置和后置两种形式。所谓前置,就是运算符在操作数的前面,后置就是指运算符在操作数的后面。在这里,二者还是有很大的不同的。强调:后置运算符的优先级高于前置运算符

例如:i++;                          //后置

- -j;                        //前置

规则:在进行运算时,前置是先变化后运算,后置是先运算后变化。

例如:前置形式

int i=5 ; x=++i; y=i        // i 要先增值后付给x,即先变化,后运算(i=6 ,x=6 ,y=6)

int  i=5 ;++i;  x=y=i    //(i=6, y=6 ,x=6)

后置形式

int i=5; x=i++ ; y=i  ;            // i 先赋值给x,再加1

2、条件运算符

形式:d1?d2:d3 ,C++中唯一一个三目运算符

规则:1.先计算d1

2.如果d1的值为true,返回d2的值作为结果

3.如果d1为false,返回d3的值作为结果

3、逗号运算符

形式:表达式1,表达式2,表达式3...

规则:先求表达式1的值,再求表达式2的值,以此类推,整个逗号表达式结果的值是最后一个表达式的值

4.求字节运算符

形式:sizeof(类型说明符|变量名|常量)

规则:求操作数占用内存大小,由操作数类型决定。

5.成员运算符

C++语言中提供了指明数组元素、结构及联合成员的运算符。

例如:下标运算符 [  ]‘、通过指针结构或联合体成员运算符 -->

6、取地址运算符

形式:& 变量名

规则;即用来获取某个变量的内存单元地址值。

例如:& a 表示变量a的地址值,通常可作用在各种变量名前,如数组元素名、结构变量等。不能作用在常量、非左值表达式之前,因其二表达式是没有内存地址的。

7、取指针内容运算符

形式: * int    a=5  ;  int  * p=& a    // 变量a标识的内存单元中存放的值为5,指针变量p指向变量a,将该运算符作用于p(即* p),最后*p的结果为5

以上是我在学习C++中遇到的一些较为特殊的运算符。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/f4336e0b7eb46e0b540452e0baa79838.html