2.1 数据基本类型
1. 4种基本数据类型:整型,浮点型,指针,聚合类型。
2. 整型包含:字符,短整型,整型,长整型,都分为有符号和无符号。
1)ANSI规则:长整型至少和整型一样长,而整型至少和短整型一样长。
2)ubuntu 整型所占字节:
1字节:char, signed char, unsigned char
2字节:short int, unsigned short int
4字节:int, unsigned int, long int, unsigned long int.
3)ubuntu 整型变量范围:
类型 signed unsigned
字符 -128 ,127 255
短整型 -32768,32767 65535
整型 -2147483648,2147483647 4294967295
长整型 -2147483648,2147483647 4294967295
4)整型字面值
A. 整型字面值:
默认类型是最短但足以容纳整个值的类型。
改变默认类型,在整型字面值后面加:
L或l: long整型
U或u: unsigned整型
上面两组字符中各一个:unsigned long
B. 字符常量,类型总是int,例如:'M' '\n' '\377'
C. 宽字符常量:L'x'
3、枚举类型:值为符号常量而不是字面值的类型
声明:
enum Jar_Type {CPU,PINT,QUART};
声明变量:
enum Jar_Type jug,gas,med;
也可以:
enum {CUP,PINT,QUART}jug,gas,med;
注意,CUP默认为0,后一个为前一个加1,可以 修改默认值:
enum Jar_Type {CPU=1,PINT,QUART=5};
4、浮点类型
1)单精度 float 4字节(ubuntu)
双精度 double 8字节(ubuntu)
扩展精度 long double 12字节(ubuntu)
2) ANSI规则:long double 至少和double一样长。
double至少和float一样长。
浮点类型至少能容纳10^-37 ~ 10^37之间的任意值。
3)浮点数字字面值总是写成十进制
4)默认是double类型,除非在字面值后面跟:
L或l:long double
F或f:float