假设 C 中的整数由硬件规范处理还是在软件中处理?
通过整数,我指的是原始“int”
基本思想是,如果 C 中的整数不依赖于硬件,那么让 gcc 实现不同的整数处理程序会违反标准。这样,您可以拥有传统的 32 位 int 处理程序,然后您还可以拥有 256 位整数的处理程序,甚至可能是动态大小的 int。
我确实知道 long 和 long long,但我不确定它们是否独立于提供的硬件,我只想指定构建工具链时要使用的“int”处理程序的大小/类型。
我也理解这样做的危险(因为用 32 位整数编译器构建 256 位整数会很糟糕!),但是对于那些需要 gmp 库之类的代码,我认为它会使代码的可读性更好. 兼容性将是相同的,但依赖于编译器而不是代码本身。
疯狂的想法,我知道......但回到原来的问题:
假设 C 中的整数由硬件规范处理还是在软件中处理?