linux C
文章目录
- 变量
- 运算符
一、变量
[存储类型] 数据类型 标识符 = 值
标识符:由数字、字母、下划线组成的序列,不能以数字开头。
数据类型:基本数据类型+构造类型
存储类型:auto static register extern(说明型)
1、auto:默认。自动分配空间,自动回收空间。
2、register:(建议形)寄存器类型。只能定义局部变量,不能定义全局变量;大小有限制,只能定义32位大小的数据类型,如double就不可以。寄存器中没有地址,所以一个寄存器类型的变量无法打印出地址查看或者使用。
3、register int i=1;(当i的值连续使用n次,方便在程序中取这个值)
4、static:静态类型,自动初始化为0或空值(只用一块空间,下图static int x =0作为定义来讲只被定义一次)。并且其变量的值有继承性。常用于修饰变量或者函数。
5、exrern:说明型,不能改变被说明的变量的值或类型。
1、变量的生命周期和作用范围
(1)全局变量和局部变量
(2)局部变量和局部变量
二、运算符
1.算术运算符
5/2=2
5%2=1
5.0/2=2.5
5.0%2表达式不成立。%要求两边操作数必须为整形。
自增自减:运算符在前,先进行计算,再取变量值使用。
变量在前,取变量值使用,再进行计算。
i++;-->表达式为1,i为2。
++i;-->表达式为2,i为2。
2.条件运算符
a>b?a;b;
3.求字节数:sizeof
4.强制类型转换
5.位运算
<< >> ~ | ^ &
左移 右移 取反 按位或 异或(相同为0不同为1) 按位与
将操作数中第n位置1,其他位不变:num=num|1<<n
将操作数中第n位置0,其他位不变:num=num&~(1<<n)
测试第n位,if(num&1<<n)