【发布时间】:2011-06-01 08:03:55
【问题描述】:
这源于今天早些时候关于 bignum 库和 gcc 特定于 C 语言的 hacks 的问题。具体来说,使用了这两个声明:
typedef unsigned int dword_t __attribute__((mode(DI)));
在 32 位系统上和
typedef unsigned int dword_t __attribute__((mode(TI)));
在 64 位系统上。
我假设这是对 C 语言的扩展,因此无法实现它在当前 (C99) 标准中实现的任何目标。
所以我的问题很简单:这个假设是否正确?这些语句对底层内存有什么作用?我认为结果是我在 32 位系统中有 2*sizeof(uint32_t) 为 dword ,在 64 位系统中为 2*sizeof(uint64_t) ,对吗?
【问题讨论】:
标签: c attributes c99 bignum