1.什么是数据类型?
数据类型就是数据的属性和操作,决定了数据在程序中的存在和使用方式。
举例:int类型
int类型属性:代表一个整数值,该类型值共享整数的属性。
int类型:操作-可以改变int类型值的符号,两个int类型值可以相加、相减、相乘、相处、求模。
注意:char也属于整数类型,因为它实际上存储的是整数,而不是字符(转换关系见ASCII码表)。
2.数据类型分类
数据类型包括:基本数据类型、派生数据类型和抽象数据类型;
基本数据类型包括整数类型和浮点数类型;
派生数据类型包括布尔类型、指针和聚合类型。聚合类型又包括数组、结构体、枚举和联合。
其关系如下图所示:
3.数据类型的关键字
3.1基本数据类型关键字包括:
int、long、short、unsigned、char、float、double、signed、_Bool、_Complex和_Imaginary
3.2派生数据类型关键字:
指针为基本类型关键字加解引用运算符,如int*。 结构体struct、枚举enum、联合union
C语言可以处理多种数据类型。在C程序运行时,把变量声明为整形、字符型或浮点型,CPU才能正确的存储,读取和解释数据。这也是为什么有8位数据、16位数据和32位数据的区别。只有有了这些规定,CPU才能为这些变量分配相应大小的内存空间,正确读取和解释内存中的数据。
char是用来容纳字符的,但其本质上也是整型值,要么是有符号要么是无符号,跟编译器有关。所以如果想让你的程序在不同的平台上可移植,要么这两个平台的编译器缺省的有无符号是相同的。要么在程序里显式的声明为unsigned或signed!
当然,如果显式的声明也有可能带来其他问题,一是有可能降低编译器的处理效率。二是有可能与库函数不兼容。