C语言运算符和表达式

来源:互联网 发布:nginx 安装 编辑:程序博客网 时间:2024/05/17 08:11
1、const在定义时必须进行初始化,因为不能再赋值。在程序中也不能修改其值。
2、printf("abc");
_getch();
printf("\b \b");
输出ab
3、printf("abc");
if(8==_getch())
printf("\b \b");
Backspace的ASCII码为8.按Backspace执行。
4、判断字符以#结束
while((c=getchar())!='#');
5、scanf函数的返回值为int 值,即成功赋值的个数。
while( 1==scanf("%lf",&v))
6、一个单独的常量或变量可以作为表达式。
7、/* int x=1,y=2,z=3;
x=y--<=x||x+y!=z;
printf("%d,%d",x,y);*/
输出结果为1,1
8、右结合性的运算符:
++  -- ! + -(正负) &(取地址) *(取值) sizeof   new      delete(特殊运算符)
?:(条件运算符)
=      *=      /=      +=    -=   |=   <<=   >>=   %=  &=      ^=   &&=    ||=
9、左值:存储空间可以更新,处于可修改状态
等号左边必须是一个可修改的左值,不能是常量或表达式。
当赋值号两边类型不一致时,将右边类型按照左边类型转换。
先看优先级再看结合性。
10、float    fA=5/3;
运行结果为1.0      先算出1再转换成float型。
11、余数的符号和被除数相同:
5%3=2  
-5%3=-2
5%(-3)=-2
不允许对浮点数进行取余操作,没有意义。
12、后增量比前增量优先级高:b++比++b优先级高。
int c=a+++b;
即为c=(a++)+b;
13、int a=2;
int b;
b=(++a)+(++a)+(++a);
b的最终值为15.
14、当一个变量和一个常量做比较,尽量把常量写在后面。如:3==a。可避免错误。
15、对于浮点数,不能直接用“==”和“!=”比较其大小。
正确的方法:fabs(fa-5.5)<1e-6
因为浮点数精确到小数点后第六位。
16、短路运算。
a=1;
b=2;
a&&++b
当a为假时,b不变,值依然为2































原创粉丝点击