基于字节顺序进行有条理的编译

jbe*_*man 5 haskell endianness ghc cabal

我正在Word从字节数组中读取s并且需要使我的代码的一部分以字节序识别.GHC是否暴露了任何MachDeps.h可以用于使代码以处理器字节顺序为条件的代码?如果没有,我可以可靠地推断出HOST_ARCH(通过ghcplatform.harch()条件的.cabal文件中的可访问性)吗?还是其他想法?

Gur*_*Evi 7

你在寻找这样的东西:https: //hackage.haskell.org/package/cpu-0.1.0/docs/System-Endian.html

如果您不希望/不能使用这些包,查看上面的源代码,您可以看到如何使用(几乎)任何低级编程语言(如C或类似语言)检查任何平台上的字节顺序.填充堆栈的一部分(对于具有4位的机器:例如1000),然后读回所述堆栈的LSB或MSB.Endianness将确定它的存储方式(您将读回1000或0001).