宏LONG_MAX和LLONG_MAX

LONG_MAXLLONG_MAX均存在与头文件limits.h中,分别表示long intlong long int类型的最大值。

下面程序在64位编译系统中,打印该宏的值。

#include <stdio.h>
#include <limits.h>
#include <string.h>

int main() {
    char buf[100];
    sprintf(buf, "%lld", LLONG_MAX);
    printf("%s\n", buf);

    memset(buf, 0, sizeof(buf));
    sprintf(buf, "%ld", LONG_MAX);
    printf("%s\n", buf);
    
    return 0;
}

执行结果:

9223372036854775807
9223372036854775807
  1. 32位编译系统中:
    long 占4字节 int 占4字节 long int 占4字节
  2. 64位编译系统中:
    long 占8字节 int 占4字节 long int 占8字节
  3. 32位和64位编译系统中
    long long int 在32位和64位编译系统中,都占8字节
上一篇:粤嵌gec6818开发板自动切换图片


下一篇:Tsinghua OJ ~ 数据结构 MOOC ~ PA1 ~ 灯塔(LightHouse)