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++中遇到的一些较为特殊的运算符。






郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。