C 语言的运算符介绍
来源:互联网 发布:淘宝打假套话 编辑:程序博客网 时间:2024/06/15 21:51
运算符:()最高 =最低 单目比双目高
()优先级最高
= 赋值运算符的优先级最低
< 的优先级比+的优先级低
+(左结合) - * /(向0取整,正数取小,负数取大) %(两个操作数必须为整数)
= += -= *= /= //右结合
++ --
> < >= <= == != 逻辑值(布尔) 真 假 (c语言不能表示逻辑真或者逻辑假的值,
用0表示假,用非0表示真,通常用1表示)
a = 3;
b = 4;
a > b; 逻辑假 0
a < b; 逻辑真 1
,运算符
表达式:a = b也有值,结果是:a, 4
与 (全真为真,有假则假)
或 (有真则真,全假则假)
非 (相反)
sizeof(类型/变量名/表达式):
不会对表达式真正进行运算,而只关心类型。
可以得到所有表达式的类型的大小。
运算符:
() [] -> . 自左至右
! ~ ++ -- - (类型) * & sizeof:自右至左(单目运算符)
1、()最高 =最低
2、单目运算符比双目高
3、双目运算符除了赋值运算符是自右至左 其他的都是自左至右的。
4、三目运算符是自右至左的(? :)
优先级仅高于赋值运算符和逗号运算符
/:
除以0会报浮点数例外,程序会直接终止。
%:
c99中规定是向0取整。
余数的符号与被除数一致。
赋值运算符:
i=j=k=0; 合法
k=1+(j=i) 合法
左值:
存储在计算机中的对象,计算出来的临时值不可以作为左值。
运算符:
++:
--:
//很多情况下的结果与编译器有关,因此在用的时候最好没有歧义。
eg:
int i = 3,j = 3;
int a = i++; //运算结束时:a=3,i=4 先取值,再自加
int b = ++j; //运算结束时:b=4,j=4 先自加,再取值
逻辑表达式:(结果要么是0 要么是1)
关系运算符:
< > <= >=
判等:
== !=
逻辑运算符:(与或非)
! && ||
1 && x = x
1 || x = 1
0 && x = 0
0 || x = x
注:
只有逻辑与和逻辑或运算有短路特征,当表达式的值确定后就不再向后运算。
位运算:(按位运算)
&:按位与:经常用按位与来测试某一位(用1与)
|:按位或:经常用按位或来把某一位置1,也可以测试某一位(用0或)
if(x | 0x8 ==x)
printf("权值为8的是1");
^:异或 :把一个数反转。
1 ^ x = -x
0 ^ x = x
~:按位取反
先加1,再符号位取反。
<<:左移:依此向左移,右边补0
在没有溢出的情况下,左移n位,相当于乘以2^n
>>:右移:无符号数左边补0,符号数左边补符号位。
右移n位,除以2^n,除不尽时丢弃余数。不能超过类型的宽度。否组会
先对宽度取余,在移动取余结果的位数。
-1:1111 1111
0 0000 0000
char(有符号):128(-128):1000 0000
两个数的运算:
1、把小范围的数转化为大范围的数
2、最小的计算单位是int
char c = 'a';
char d = 'b';
sizeof(c + d) => 4;
- C 语言的运算符介绍
- C语言位运算符异或^的简单介绍
- C语言的运算符
- C语言的运算符
- C语言的运算符
- C语言的运算符
- c语言的运算符
- C语言的运算符
- C语言的运算符
- C语言的运算符
- C语言的运算符
- C语言的#运算符
- C语言的运算符
- C语言中 数组的运算及sizeof()和strlen()操作符的简单介绍
- C语言:数组的运算及sizeof(),strlen()操作符的介绍
- c语言有关操作符(运算符)的简单介绍
- C语言学习笔记 运算符初步介绍
- C语言运算符运算
- 生成swc库文件若干方法
- DateTime 24时制
- mysql中insert into和replace into以及insert ignore用法区别
- ArrayList Vector LinkedList 区别与用法
- 关于使用Comparator对集合进行强制排序.
- C 语言的运算符介绍
- ACCESS 联表更新字段
- PHP中的mb_convert_encoding与iconv函数介绍
- C++ primer中关于new和delete工作的描述
- 让TortoiseSVN 自动添加keyword
- KMP字符串模式匹配详解[转]
- 判断Access里是否存在表
- C 语言中的数据结构介绍
- 自定义控件UIScrolleTabBar