【发布时间】:2021-08-18 13:28:14
【问题描述】:
我知道在从二进制文件和网络中读取数据时我应该关心这一点,但是对于源代码呢?如果我分配值,例如int = 42,对字节顺序有影响吗?它会在具有大端顺序的大端机器上编译,然后在小端机器上不能正常工作吗?还是编译器会处理这个?
【问题讨论】:
-
编程语言与字节序无关。整数值将被传递给以正确方式存储(或检索)它们的 CPU。
-
编译后的可执行文件必须与部署可执行文件的机器相匹配(运行它的机器)。
-
" 它会在 big endian 机器上以 big endian 排序编译,然后在 little endian 机器上不能正常工作吗?" - 你不能运行为一个架构编译的程序在另一个架构上。您必须为要在其上运行程序的每个架构编译不同的二进制文件。
标签: c++ endianness