C11 标准第 3.6 节将“字节”定义为“数据存储的可寻址单元...以保存...字符”。
C++11 标准第 1.7 节将“字节”定义为“C++ 内存模型中的基本存储单元...包含...字符”。
这两个定义都没有说“字节”是最小可寻址单元。这是因为标准有意从特定机器中抽象出来吗?您能否提供一个真实的机器示例,其中 C/C++ 编译器决定让“字节”长于/短于最小可寻址单元?
最佳答案
字节是严格符合 C 代码的最小可寻址单元。 C 实现执行程序的机器是否支持寻址较小的单元与此无关; C 实现必须呈现这样一种 View ,其中字节是严格符合 C 代码的最小可寻址单元。
C 实现可以支持寻址较小的单元作为扩展,例如简单地通过定义 C 标准未定义的某些指针操作的结果。
关于c++ - 字节真的是最小可寻址单位吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60241538/