C/C++ 整数类型的长度

参考 cppreference.cn

在某些语言中,整数类型的长度是固定的,如java中

  • char 8
  • short 16
  • int 32
  • long 64

可是C/C++ 与机器相关,整数类型长度与平台有关

先可以记一个简单的

按照C标准:

  • char >= 8
  • short >= 16
  • int >= 16
  • long >= 32
  • long long >= 64

在C标准中同平台一定保证
1 == sizeof(char) ≤ sizeof(short) ≤ sizeof(int) ≤ sizeof(long) ≤ sizeof(long long)

而且C/C++ 的整数类型定义的形式也很多,现在给出长度等价表格

  • char
    char , signed char , unsigned char
  • short
    short , signed short , unsigned short , short int , signed short int, unsigned short int
  • int
    int , signed int , unsigned int , signed , unsigned
  • long
    long , signed long , unsigned long , long int , signed long int, unsigned long int
  • long long
    long long , signed long long , unsigned long long, long long int , signed long long int, unsigned long long int

现在引入C整数类型数据模型 的概念

数据模型确定整数类型的大小,不同的平台使用的数据模型不同

列举4种常用的数据模型

  • 32 位系统
    • LP32 或 2/4/4 ( int 是 16 位,long 和指针是 32 位)
      Win16 API
    • ILP32 或 4/4/4 ( int、long 和指针是 32 位);
      Win32 API
      Unix 和类 Unix 系统 (Linux, Mac OS X)
  • 64 位系统
    • LLP64 或 4/4/8 ( int 和 long 是 32 位,指针是 64 位)
      Win64 API
    • LP64 或 4/8/8 ( int 是 32 位,long 和指针是 64 位)
      Unix 和类 Unix 系统 (Linux, Mac OS X)
相关推荐
catchadmin几秒前
免费可商用 PHP 管理后台 CatchAdmin V5.3.1 发布 后台打包直降 5s 内
开发语言·php
YY&DS10 分钟前
Qt Designer 自定义控件已提升后,如何修改提升类
开发语言·qt
Brilliantwxx11 分钟前
【C++】 深入理解红黑树:实现与原理全解
数据结构·c++·笔记·算法·青少年编程·红黑树
右耳朵猫AI19 分钟前
Rust技术周刊 2026年第19周
开发语言·后端·rust
Leweslyh30 分钟前
基于 Confucius 架构的无人集群网络控制原语解析
开发语言·网络·php
月落归舟42 分钟前
Java线程小记
java·开发语言
摇滚侠1 小时前
01 基础语法 JavaScript 入门到精通全套教程
开发语言·javascript·ecmascript
sleven fung1 小时前
Milvus 向量数据库
开发语言·数据库·python·langchain·milvus
大大杰哥1 小时前
Java 日志框架详解:SLF4J + Logback 从入门到实战
java·开发语言·logback
ylscode1 小时前
黑客利用 GHOSTYNETWORKS 和 OMEGATECH 托管 JS 恶意软件基础设施
开发语言·安全·php·安全威胁分析