相关疑难解决方法(0)

CHAR_BIT是> 8?

ISO C标准要求CHAR_BIT至少为8.

POSIX强制CHAR_BIT等于8,并且(几乎?)所有使用八位字节的网络和通信标准,是否有任何当代C实现CHAR_BIT> 8?

(注意:我对使用18或36位字的历史计算机体系结构不感兴趣.这是关于C的真正问题,因为它在当前的硬件上使用;考虑使用C99或更高版本的系统).

c byte char bit

15
推荐指数
3
解决办法
1117
查看次数

关于sizeof溢出size_t的C标准

这是未定义的行为吗?标准的相关部分并没有多说。

size_t n = SIZE_MAX / sizeof(double) + 1;
size_t m = sizeof(double[n]);
Run Code Online (Sandbox Code Playgroud)

c sizeof language-lawyer variable-length-array

9
推荐指数
1
解决办法
144
查看次数

size_t是否足够大以表示任何类型的大小?

是否size_t保证足够大以表示任何类型的大小?根据参考:

size_t 可以存储任何类型(包括数组)的理论上可能存在的对象的最大大小。

通常,这是一个可靠的参考,但我在标准的相关部分中找不到任何证明或质疑此主张的内容。

c size-t language-lawyer

5
推荐指数
1
解决办法
119
查看次数

标签 统计

c ×3

language-lawyer ×2

bit ×1

byte ×1

char ×1

size-t ×1

sizeof ×1

variable-length-array ×1