1

如果我在 C99 标头中写这样的内容:

static inline void f()
{
    static int x = 0;
    // Do something with x
}

是否保证包括此标头的每个模块都获得单独的实例化f()和自己的实例化x

4

1 回答 1

2

是的,顾名思义,就是这个static意思。它在标题中的事实是无关紧要的。从概念上讲,C 预处理器创建一个文件来编译每个.c文件,就好像您刚刚(重新)将标题中的所有文本输入到您.c自己一样。

于 2016-11-24T18:47:24.283 回答