【发布时间】:2012-01-07 22:43:00
【问题描述】:
例如,这里是 fread 的参考:
size_t fread ( void * ptr, size_t size, size_t count, FILE * stream );
读取一个计数元素数组,每个元素的大小为“大小字节”...
那么有多少 BITS 会读取fread(&x, 1, 1, stream)?八个还是CHAR_BIT?
【问题讨论】:
-
这是来自 Linux 联机帮助页,对吗? C标准的定义根本没有提到字节:“
fread函数从指向的流中读取ptr指向的数组,直到nmemb元素的大小由size指定stream。” -
鉴于它来自 Linux 手册页,
CHAR_BIT保证(由 Posix)等于 8。 -
C 标准确实提到了字节。 3.6 节将字节定义为最小的可寻址单元。
-
@JeremyP:C 标准可以。 “C 标准的定义”(fread)没有。
-
附加 $0.02:当您需要一个明确的术语来指代一段有意义的 8 位数据时,将其称为“八位字节”。
标签: c char byte fread language-lawyer