在C語言中,static關鍵字可以用來表示兩種不同的含義:
void foo() {
static int counter = 0;
counter++;
printf("%d\n", counter);
}
int main() {
foo(); // 輸出1
foo(); // 輸出2
return 0;
}
// file1.c
static int global_var = 10;
// file2.c
extern int global_var; // 這里會報錯,因為global_var的作用域被限制在file1.c內