2.2 数据类型及长度

补充:默认情况下 ,c语言中的整型变量都是有符号的,也就是说最左位保留为符号位。无符号整数主要用于系统编程和底层与机器有关的应用,具体应用后文再提,这里回避讨论无符号整数。

书中只列举了四种数据类型:

  • char

  • int

  • float

  • double

关于这些类型长度定义,以及其他与机器和编译器有关的属性,可以在:<limits.h> 和 <float.h> 中找到。

在 main 函数中,使用了一系列的 printf 函数来打印各种类型的整数的最小值和最大值。这些整数类型包括有符号和无符号的 char、short、int 和 long。

每个 printf 函数都接受一个格式字符串和一个或多个参数。格式字符串中的 %d、%u 和 %ld 是格式说明符,用于指定参数的类型和格式。%d 用于打印有符号的十进制整数,%u 用于打印无符号的十进制整数,%ld 用于打印有符号的长整数。

例如,printf("signed char min = %d\n", SCHAR_MIN); 这行代码打印出有符号字符的最小值。SCHAR_MIN 是一个预处理宏,定义在 <limits.h> 头文件中,表示有符号字符的最小值。

第二种的方法是使用按位运算,后文再提。

2.2.1 为什么需要数据类型

从生活中去理解,为什么需要? 小数,整数,qwert@,这种 只是举例。 怎么存储呢?

c 语言为了存储他们,进行了 “抽象”,来描述他们。

2.2.2 每一种类型的大小是多少

知道大小的用处是什么? 一个 bit 位里面,只能存 0 或者 1,空间大了,里面能存放的 xx个数 就能多些。空间越大,可以表示的数值的范围就越大,我们需要不同范围的数值的时候,我们就用不同类型来表示。

有关位与比特的知识,见 0.6 节。

2.2.3 为什么要出现这么多整型和浮点

类型提供的丰富,使用上就会更加灵活,空间利用率也会更高些。这里提到空间利用上,这个挖一个小坑,后面来填。大小不同,表示范围就不同,就可以根据情况选择适当的类型。

2.2.4 c 语言类型怎么使用

类型是拿来创建变量的,创建变量的本质是向内存申请空间。

Last updated

Was this helpful?