在计算机系统中,数据是放在内存中的,数字、文字、符号、图形、音频、视频等数据都是以二进制形式存储在内存中的,它们并没有本质上的区别,那么 0001000 该理解为数字 8 呢,还是图像中某个像素的颜色,还是要发出某个声音?
也就是说,内存中的数据有多种解释方式,使用之前必须要确定。如int a 就表明这份数据是整数,不能理解为像素、声音等。
数据类型用来说明数据的类型,确定了数据的解释方式,让计算机和程序员不会产生歧义。
C语言里的六种基本数据类型有:short、int、long、char、float、double。
C语言里的六种基本数据类型
void 类型指定没有可用的值,通常用于以下三种情况下:
- C中不返回值的函数的返回类型为空,如void show(int x);
- C中不带参数的函数可以接受一个 void, 如 int show(void);
- 指针指向 void,void* 类型表示未确定类型的指针。C/C 规定,void* 类型可以通过类型转换强制转换为任何其它类型的指针。如内存分配函数 void *malloc(size_t size),返回指向 void 的指针,可以转换为任何数据类型。
变量的类型决定了变量存储占用的空间。下表分别是标准整数类型和浮点类型的存储大小、值范围和精度。
整数类型的存储大小
浮点类型的存储大小
需要注意的是各种类型的存储大小与系统位数有关,为了得到某个类型或某个变量在特定平台上的准确大小,可以使用 sizeof 运算符。
表达式 sizeof(type) 可以获取对象或类型的存储字节大小。
扩展阅读