自己提问:为何会同时存在整形和长短整形甚至更长的整形,有一个不就够了吗?
自己回答:接下来我们看个例子,下图为代码
按下F5运行,看看结果
我们可以看到,运行结果依次为1-2-4-4-8-4-8,问题来了,这些数字是可以意思呢?
那好,我们拿出int这个数据类型来说,我们通过"sizeof()"这个函数来检查一个数据类型所占用内存的大小,发现int是向系统申请了4个字节的内存
所以,在C语言当中,之所以会同时存在整形和长短整形甚至更长的整形,是因为C语言对内存的控制极为精细
举个例子:假如int类型要占用100个单位的内存,long类型要向系统申请500个单位的内存
现在我有个需求—我有个数据大小为50个单位的内存:
那我是不是用int更合适呢?这样就只会浪费50个单位的内存,如果用long的话,就会浪费450个单位的内存