数据类型
C语言规定,在程序中使用的每一个数据,必须指定其数据类型。
3.3.11数据类型与内存
补充:现在一些嵌入式设备也需要尽量节约内存。
3.3.12 sizeof运算符
sizeof是个单目运算符,用来计算操作数在内存中占据的字节数,其操作数既可以是括在圆括号中的类型标识符,其返回值是size_t类型,即无符号整数
如:
sizeof(short); /*返回2*/
sizeof(long); /*返回4*/
sizeof(int); /*不确定,取决于不同的系统*/
也可以是一个表达式,如:
short x;
sizeof(x); /*返回2*/
代码实践 Sizeof的使用:
补充: 1、sizeof的结果与系统有关。
- sizeof是运算符,不是函数
3.3.13符号的作用
(1)整数的正负——有符号和无符号。正数和负数是两种情况,要区分两种情况,,用二进制的一位刚好可以表示,比如用0表示正数,1表示负数。C语言中确实就是用最高位来表示一个整数的正负号,0表示为正,1表示为负。
代码实践练习整数的符号:
查看上面代码的内存情况:
(2) unsigned 类型
记录中国的人口,考试分数,年龄等。那么就可以不要符号位,而节约一个二进制位,从而可以表达的数就更大了。于是C语言提出了有符号和无符号的概念。某些时候,可能并不需要正负号,比如使用自然数的时候。
unsigned 类型的代码
(3)补充 :极限的示例