介紹 C 全域變數

C 變數和類型文章中,我介紹了如何使用變數。

在這篇文章中,我想提到全域變數和區域變數之間的差異。

區域變數是在函式內部定義的,它僅在該函式內部可用。

像這樣:

#include <stdio.h>

int main(void) {
  char j = 0;
  j += 10;
  printf("%u", j); //10
}

jmain 函式之外是不可用的。

全域變數是在任何函式之外定義的,如下所示:

#include <stdio.h>

char i = 0;

int main(void) {
  i += 10;
  printf("%u", i); //10
}

全域變數可以被程式中的任何函式存取。存取不僅限於讀取變數的值:該變數可以被任何函式更新。

因此,全域變數是我們在函式之間共享相同資料的一種方式。

與區域變數不同的是,變數分配的記憶體在函式結束時被釋放,而全域變數只有在程式結束時才被釋放。