包括以下几个操作符:
按位与&,按位或
|,按位异或
^,左移<<,右移>>
另外还有一个取余操作:%
a%b的意思是,a除以b,取余数。
这个是C语言的硬性规定,位操作都是正数按照二进制进行表达的时候才有的概念;而取余操作是整数相除得余数,余数必须也是正数。
一
·下面列举了C语言一些常见的领域(包括但不限于)
(1)应用软件;
(2)对性能要求严格的领域,一般对性能有严格要求的地方都是用C语言编写的,比如网络程序的底层和网络服务器端底层、地图查询等;
(3)系统软件和图形处理,C语言具有很强的绘图能力和可移植性,并且具备很强的数据处理能力,可以用来编写系统软件、制作动画、绘制二维图形和三维图形等;
(4)数字计算,相对于其他编程语言,C语言是数字计算能力超强的高级语言;
(5)嵌入式设备开发;
(6)游戏软件开发;
二
·运行时:
1,不是字符串类型的转换为字符串,toString()
进制的时候可以进行传参,其他时候不可以,
undeinfed和null
无法返回
2,
前置运算符
++或者
--
是先运算再赋值,
后置运算符
++
或者--
是先赋值再运算。
例如:
var
name
=
100
var
name
=
100
var
age
=
name++
var
age
=
++name
alert(name)
//这个值是101
alert(name)
//这个值是
100;
alert(age)
//这个值是100;
alert(age)
//
这个值是101;
3,在运算中,布尔值
false
这个值是0
,
true是
1;
比较运算中
,如果两个一个是
数值,
一个是数字字符串,那么会把字符串转成数值
比较。
下面按优先级从高到低的顺序总结一下各种运算符,每一条所列的各运算符具有相同的优先 级,对于同一优先级的多个运算符按什么顺序计算也有说明,双目运算符就简单地用“左结 合”或“右结合”来说明了。和指针有关的运算符* &->也在这里列出来了,以后再详细解释。1 、标识符、常量、字符串和用()括号套起来的表达式是组成表达式的最基本单元,在运算中做 操作数,优先级最高。
2、后缀运算符,包括数组取下标[]、函数调用()、结构体取成员.、指向结构体的指针取成员- >、后缀自增++、后缀自减--。如果一个操作数后面有多个后缀,按照离操作数从近到远的顺序 (也就是从左到右)依次运算,比如a.name++,先算a.name,再++,这里的.name应该看成a的 一个后缀,而不是把. 看成双目运算符。
3、单目运算符,包括前缀自增++、前缀自减--、 sizeof、类型转换()、取地址运算&、指针间接 寻址*、正号+、负号-、按位取反~、逻辑非! 。如果一个操作数前面有多个前缀,按照离操作数 从近到远的顺序(也就是从右到左)依次运算,比如!~a,先算~a,再求!。
4、乘*、除/、模%运算符。这三个运算符是左结合的。 5、加+、减-运算符。左结合。
6、移位运算符<<和>>。左结合。
7、关系运算符<><= >=。左结合。
8、相等性运算符==和!=。左结合。
9、按位与&。左结合。
10、按位异或^。左结合。
11 、按位或|。左结合。
12、逻辑与&&。左结合。
13、逻辑或||。左结合。
14、条件运算符:?。在第 2 节 “if/else语句”讲过Dangling-else问题,条件运算符也有类似的问 题。例如a ? b : c ? d : e是看成(a ? b : c) ? d : e还是a ? b : (c ? d : e) ? C语言规 定是后者。
15、赋值=和各种复合赋值(*= /= %= += -= <<= >>= &= ^= |=)。右结合。
16、逗号运算符。左结合。