**
**
一.自增、自减运算符
1.自增运算符++和自减运算符–都是单目运算符,功能是使变量的值加1或减1。 2.自加或自减只能用于变量,而不能用于常量或表达式。 3.用于++、–运算的变量只能是整型、字符型和指针型变量
运行下面的程序,观察并分析运算规则
#include<stdio.h> int main( ) { int a,b,c,d; a=1; b=2; c=3; d=4; printf("a++的值为:%d \n",a++); printf("a的值为:%d\n",a); printf("++b的值为:%d \n",++b); printf("b的值为:%d\n",b); printf("c--的值为:%d\n",c--); printf("c的值为:%d\n",c); printf("--d的值为:%d\n",--d); printf("d的值为:%d\n",d); }解析
第一个输出为1,因为a++是先输出再自加1,所以该printf只输出第一步,第一步为赋值。第二个输出问a的值,因为第一次已经输出过a++的值了,第一步是赋值,所以这里属于第二步,为自加1。++b属于先自加,再赋值。之后就以此类推···注意
二.逗号运算符和逗号表达式
逗号表达式的一般形式为: e1,e2,e3,…,en注意:(1)逗号是一个多目运算符,并且优先级最低 ,而且是左结合;又称之为顺序求值运算符,第 1 个求 e1 ,其次e2,最后一个求 en 。 (2)整个表达式的值为 en 的值。 (3)与函数中参数分隔加于区别:例如
printf ( “%d, %d, %d”, a, b, c );三个值从右到左运算printf ( “%d”, (a, b, c) );三个值从左到右运算