首页 > 代码库 > typedef char int8; 这样定义的好处?
typedef char int8; 这样定义的好处?
用typedef定义int8代表char;然后用int8去定义其他变量。一旦系统中char不再是占8位的数据时,可重新typedef新的占8位的类型为int8,而所有的用int8定义的8为类型数不用再修改。
随着编译器和操作系统的演化,int/long的尺寸是会变化的,例如对于32位系统,int和long都是32bit(即4字节),但是在64位系统中,int可能就是8字节。
typedef隐藏了int32其实就是long的事实,实际上long的尺寸当然是变化的。当long尺寸不再是32bit的时候,只要重新定义一下int32,你的所有使用int32的代码就都不用改写了。
假定你10年后用128bit的机器,机器里sizeof(long)=32, sizeof(int)=16,sizeof(short)=8,sizeof(tiny)=4。此时只要你的头文件中 typedef long int32;改为 typedef tiny int32; 那么你所有的老代码都不再需要修改。
注:int32即 占32位的类型。
typedef char int8; 这样定义的好处?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。