回覆列表
  • 1 # 使用者3926722064098

    例如如下的 C 語言源程式:

    int i ;

    void mysub( ) ;

    void main( )

    {

    int j = 5 ;

    i = 50 ;

    mysub( j ) ;

    printf("i = %d\t%d\n", i , j ) ;

    }

    void mysub( int j )

    {

    i += 80 ;

    j += 100 ;

    }

    定義在主函式 main( ) 之外的變數 i 就是全域性變數,它在 main( ) 函式中的初始值為 50,到了 mysub( ) 子函式中,i 的值變成了 130,則再返回主函式 main( ) 時,列印 i 的值就是 130。

    而變數 j 就是區域性變數,僅限於 main( ) 函式有效。雖然在子函式 mysub( ) 中將 j 的值增加了 100,但是返回主函式時,列印的 j 的值仍然是 5 。

    總而言之就是:全域性變數是定義在主函式 main( ) 之外的變數,C 語言源程式中的任何一個子函式都可以修改該變數的值;而區域性變數就是:該變數僅僅在定義了某個子函式的內部有效,只要該子函式執行完,返回主函式,該變數的值就無效了。

  • 中秋節和大豐收的關聯?
  • 當前最理想的理財方式是什麼?