c - 什么时候使用 short 而不是 int?

标签 c

想到了两个我认为简短的用例:

  1. 我想要一个大小至少为 16 位的整数类型
  2. 我想要一个大小正好为 16 位的整数类型

在第一种情况下,由于 int 保证至少为 16 位并且是最有效的整型数据类型,因此我将使用 int。在第二种情况下,由于标准不保证 short 的大小恰好是 16 位,我会改用 int16_t。那么短有什么用呢?

最佳答案

从来没有理由使用 short在具有 16 位整数的 C99 环境中;你可以使用 int16_t , int_fast16_tint_least16_t相反。

使用short的主要原因向后兼容不提供这些类型的 C89 或更旧环境,或使用 short 的库作为其公共(public) API 的一部分,用于实现 <stdint.h>本身,或者为了与没有 16 位整数的平台兼容,因此它们的 C 编译器不提供 int16_t .

关于c - 什么时候使用 short 而不是 int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10254511/

相关文章:

c - NativeAPI挂起进程

c - 如何在C中进行声音合成?

C:结构,简单,完整的短程序代码显示

c++ - 大输入上释放对象的校验和不正确

c - 如何从 C 代码配置 libinput 设备?

c - 使用 cudaMallocManaged 很快就会耗尽内存

从 Lua 调用 C 库函数

c - 代码段的动态重定位

c - 如何在C中创建字典?

c - 我如何打印一位?