C语言中的size_t,为什么叫和为什么要弄这个
size_t 是 元数据类型(primitive),
在sys/types.h头文件中一般由typedef声明定义,算是给大家熟悉的基本数据类型起了别名。既然已经有了基本数据类型,为何还要声明并使用这些新的呢?
人们目前普遍认为int是32位的,因为主流操作系统和计算机仍采用32位。而在过去16位操作系统时代,imt类型是16位的。根据系统的不同、时代的变化,数据类型的表现形式也随之改变,需要修改程序中使用的数据类型。如果之前已在需要声明4字节数据类型之处使用了size_t或ssize_t,则将大大减少代码变动,因为只需要修改并编译size_t的typedef声明即可。
在项目中,为了给基本数据类型赋予别名,一般会添加大量typedef声明。而为了与程序员定义的新数据类型加以区分,操作系统定义的数据类型会添加后缀_t。