|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 czlhxm 于 2017-7-11 15:36 编辑
2.1 基本数据类型
C语言仅有4种基本数据类型:整型、浮点型、指针和聚合类型(如数组和结构),其他类型由上派生。
变量的三个属性:作用域、链接属性、储存类型。
作用域是变量能够使用的有效范围。
链接属性是变量能否在多文件或单一文件中使用的有效范围定义。
储存类型是变量在实际运行中在内存里的存储方式。
位是最小的储存单位,可容纳值0或1,是计算机储存的基本单位。
字节是计算机常用储存单位。一个字节占8位,固一个字节可表示256种0、1组合。
字是自然储存单位,对于不同硬件,字的大小是不同的。
2.2 整型和字符型
不同硬件中,整型的大小不尽相同,但储存方法基本相似:假如一个整型占用大小为4个字节,那么它在内存中占用32位,最高位(从左往右第一位)储存整数符号(0正1负),往后的位数表示数值,如250在内存中为"00000000000000000000000011111010"。若为无符号(unsigned)则最高位直接开始储存数值。
长整型至少和整型一样长,整型至少和短整型一样长。
整型最小范围: char 0~255 signed char -127~127 unsigner char 0~255
short int -32767~32767 unsigned short int 0~65535 int -32767~32767
unsigned int 0~65535 long int -2147483647~2147483647
unsigned long int 0~4294967295
缺省(即默认)的整型为机器最自然(高效)的整型类型。
整型溢出时变为超出范围的值或变为负数。
limits.h(详情百度)说明了各整型值的特点。
可移植程序变量值建议为signed和unsigned范围大小的交集。
常量可用L/l、U/u前缀表示。
字符型在技术实现上是整型的一种,通过ASCII码对照相应的整型值,固可以操作整型的方式操作字符型。
浮点型在内存中的储存分为符号区段指数区段和数值区段,类比整型,详情百度。
2.3 指针、字符串和其他数据类型
指针是变量在内存中储存的地址的抽象表现形式。
字符串在C中以字节数组的形式储存,并以NULL字节终结字符串。
数组为一系列类型相同的元素构成,在内存中以连续的片段进行储存。
枚举类型功能类似数组,但貌似只能储存整型。
结构体为进阶版“枚举”,支持包含多个不同类型的成员。
对于特殊的类型,可使用(基本数据类型)的方式进行转换为相应基本类型,例:(int)time_t 。 |
评分
-
查看全部评分
|