相关疑难解决方法(0)

C99有#define吗?

我想以一种方式在C99中做一些事情,否则以另一种方式执行它.什么#define检查?

#ifdef C99
...
#else
...
#endif
Run Code Online (Sandbox Code Playgroud)

c macros c99

22
推荐指数
2
解决办法
7038
查看次数

`long`保证与`size_t`一样宽

当寻找unsigned long足以为size_t争论目的而持有的证据时,printf我遇到了两个事实(oid).

首先,这个答案说明long确实不能保证足够大size_t.另一方面,我看到这个答案暗示printf("%lu", (unsigned long)x)在C99之前使用,x是的size_t.

所以问题是你可以假设或者你保证在C99之前long就足够了.另一个问题是,是否存在适合任何其他标准化整数类型的保证(除了明显的例外情况,例如,等等).size_tsize_tssize_tptrdiff_t

c c89 language-lawyer

4
推荐指数
1
解决办法
703
查看次数

标签 统计

c ×2

c89 ×1

c99 ×1

language-lawyer ×1

macros ×1