黑马程序员C语言教程:C基础技术文档

黑马程序员C语言教程:C基础技术文档

黑马程序员C语言教程:C基础技术文档

变量

变量声明定义

声明不分配存储空间,定义分配存储空间,广义上讲定义是声明的一种特殊形式。不同类型常量的表示

10 整型

10l 10L 长整型

10ll 10LL 长长整型

10ul 10UL 无符号长整型

10ull 10ULL 无符号长长整型

010 八进制8

0x10 十六进制16

整型变量的取值范围

在计算机中数是以补码的形式存在的,纠其原因是为了方便进行运算。正数的补码和原码相同,负数的补码等于其绝对值的原码取反后加1(符号位保持不变)。下面就来说明为什么用补码方便运算:

以8位2进制数来举例说明,对于8位有符号2进制数,最高位为符号位,设N为负数,则|N|为正数且|N| >= 1,N的补码为

N的补码= 2^7 + 2^7 - 1 - |N| + 1 = 2^7 + 2^7 - |N|,

设M为正数,

在计算机中N+M实际上等于N的补码+M即

2^7 + 2^7 - |N| + M = 2^7 + 2^7 + (M - |N|),

1)如果M > |N|,那么最终运算结果为M - |N|,符号位从1变为0,这是因为N的符号位等于1,可表示为1000 0000 = 2^7,当再加上2^7后,将变为0,即

1000 0000

+ 1000 0000

= 10000 0000,1被舍弃了。

2)如果M < |N|,那么最终运算结果为2^7 + 2^7 - (|N| - M),即等于-(|N| - M)的补码,也就是-(|N| - M)了。

相关推荐
相关主题
热门推荐