127.0.0.1/24 2020-03-30 16:52 采纳率: 50%
浏览 273
已采纳

为啥我编译的时候C语言的int类型和long int类型占用字节一样呢?

今天在输出的时候发现int类型和long int类型占用字节一样,查了很多资料都没找到原因,望大佬解惑,感激
源码

#include <stdio.h>
int main()
{
    printf("\n%d,%d",sizeof(int),sizeof(long));
    return 0;
}

运行结果

  • 写回答

1条回答 默认 最新

  • linxihe0 2020-03-31 14:03
    关注

    数据类型占内存的位数实际上与操作系统的位数和编译器(不同编译器支持的位数可能有所不同)都有关。
    short和int型至少为16位,long型至少为32位。int型不能超过long型。
    例如,GCC编译器下32位机器,int和long int都是4个字节。在64位机器,int为4个字节,long int 为8个字节。
    更多详情,可看The C Programming language 这本书

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?