名稱空間
變體
操作

檔案作用域

來自 cppreference.com
< c‎ | 語言

如果宣告識別符號的宣告符或型別說明符出現在任何塊或引數列表之外,則該識別符號具有檔案作用域,該作用域在翻譯單元結束時終止。

因此,將識別符號的宣告(在宣告符或型別說明符中)放置在任何塊或引數列表之外,意味著該識別符號具有檔案作用域。識別符號的檔案作用域從宣告處延伸到宣告出現的翻譯單元的末尾。

[編輯] 示例

識別符號 a、b、f 和 g 具有檔案作用域。

#include <stdio.h>
 
int a = 1;
static int b = 2;
 
void f (void) {printf("from function f()\n");}
static void g (void) {printf("from function g()\n");}
 
int main(void)
{
    f();
    g();
 
    return 0;
}
/* end of this translation unit, end of file scope */

可能的輸出

from function f()
from function g()