变量的定义与分类
使用变量是要注意:
1变量必须先声明,后使用
2变量一旦声明就不可以更改其类型
3同一个作用域内不能命名重名的变量

变量的命名规则
1只能由字母(包括大小写)、数字和下划线构成
2不能以数字开头
3长度不超过63字符
4字母区分大小写
5变量名不能使用关键字(int、if、while、return等)
变量的作用域
变量的作用域分为局部作用域和全局作用域
1局部作用域:仅在函数、代码块或文件内可见
2全局作用域:在整个程序都可见
变量的生命周期

局部变量和全局变量
局部变量作用域仅限函数或代码块内部,生命周期通常随函数的调用开始和结束,静态局部变量除外,生命周期贯穿整个程序运行。通常存储于栈中。
全局变量作用域可以拓展至整个程序,生命周期从程序的开始到结束,静态全局变量只能在声明它的文件中访问。存储在静态存储区。
使用static关键字声明的变量称为静态变量,既可是局部变量也可以是全局变量。静态变量的生命周期从程序运行时创建,直到程序运行结束。
整型变量int
原码、反码、补码
原码、反码、补码是计算机中表示有符号整数的三种编码方式,主要用于解决计算机中减法运算和负数表示的问题。
计算机8位有符号二进制:最高位为符号位,0表正数、1表负数,其余为数值位。
原码:人类可读编码。正数符号位为0,负数为1,数值位为数字本身二进制。缺陷是0有正负两种编码,且无法直接做正负加减运算,机器不使用。
反码:运算过渡编码。正数反码等于原码;负数符号位不变,数值位全部取反,仍存在双0问题,仅作计算中间步骤。
补码:机器唯一存储运算编码。正数三码统一;负数补码=反码+1。唯一0编码,可将减法转为加法(a-b=a+(-b补码)),简化硬件。
速记口诀:正数三码相同,负数反码取反留符号,补码反码加一。
统一举例
+5:原码10000101 → 反码11111010(符号不变、数值取反) → 补码11111011(反码+1)
整形变量分类

大端模式:高字节存储在低地址
小端模式:低字节存储在高地址
unsigned 和 signed
相同点:都是在一段存储空间存储的数字 计算方法一样
不同点:混合判断时格式转换不同
溢出后的取值不算严格上的不同点,只是表示方法不同,计算方式是一样的
printf () 的表示
% d 或 % i:用于输出有符号的十进制整数
% u:用于输出无符号的十进制整数
% o:用于输出八进制整数
% x 或 % X:用于输出十六进制整数(% x 使用小写字母,% X 使用大写字母)
在 printf 中,还可以使用修饰符指定不同大小的整型变量: % h:用于表示短整型(short)
% l:用于表示长整型(long)
% ll:用于表示长长整型(long long)
可以通过修饰符来控制输出的宽度、对齐方式、填充字符等: 宽度:指定输出字段的最小宽度。 -(左对齐):默认情况下,输出是右对齐的,使用 - 可以使其左对齐。 0(零填充):用零来填充空白位置,而不是默认的空格。

543

被折叠的 条评论
为什么被折叠?



