解釋C語言中變數的作用域。


儲存類指定變數的作用域、生命週期和繫結。

要完全定義一個變數,不僅需要說明其“型別”,還需要說明其儲存類。

變數名標識計算機記憶體中某個物理位置,在該位置分配一些位來儲存變數的值。

儲存類說明以下因素

  • 變數儲存在哪裡(記憶體或CPU暫存器)?
  • 如果未初始化,變數的初始值是什麼?
  • 變數的作用域是什麼(在哪裡可以訪問它)?
  • 變數的生命週期是什麼?

作用域

作用域定義物件的可見性。它定義了可以在哪裡訪問物件。

變數的作用域是區域性或全域性的

  • 在塊內定義的變數具有區域性作用域。它們僅對定義它們的塊可見。
  • 在全域性區域定義的變數從其定義處可見直到程式結束。它在程式的任何地方都是可見的。

示例

以下是關於變數作用域的C程式:

#include<stdio.h>
int c= 30; /* global area */
main ( ) {
   int a = 10; //local scope//
   printf ("a=%d,c=%d"a,c);
   fun ( );
}
fun ( ){
   printf ("c=%d",c); //global variable
}

輸出

執行上述程式時,會產生以下輸出:

a =10, c = 30
c = 30

示例

以下是關於區域性變數和全域性變數的C程式:

 線上演示

#include<stdio.h>
int a,b;
a=1,b=2;
main() {
   int c,d;
   printf("enter c and d values:");
   scanf("%d%d",&c,&d);
   c=c+d; //local variables
   b=a*b; //global variables
   printf("c value is:%d
",c);    printf("b value is:%d
",b); }

輸出

執行上述程式時,會產生以下輸出:

enter c and d values:4 7
c value is:11
b value is:2

更新於:2021年3月25日

820 次檢視

啟動您的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.