c 之變數作用域

2021-08-15 12:18:07 字數 1009 閱讀 8834

作用域是程式的乙個區域,一般來說有三個地方可以定義變數:

我們將在後續的章節中學習什麼是函式和引數。本章我們先來講解宣告是區域性變數和全域性變數。

在函式或乙個**塊內部宣告的變數,稱為區域性變數。它們只能被函式內部或者**塊內部的語句使用。下面的例項使用了區域性變數:

#include

<

iostream

>

using

namespace

std;

intmain()

在所有函式外部定義的變數(通常是在程式的頭部),稱為全域性變數。全域性變數的值在程式的整個生命週期內都是有效的。

全域性變數可以被任何函式訪問。也就是說,全域性變數一旦宣告,在整個程式中都是可用的。下面的例項使用了全域性變數和區域性變數:

#include

<

iostream

>

using

namespace

std;

// 全域性變數宣告

intg;

intmain()

在程式中,區域性變數和全域性變數的名稱可以相同,但是在函式內,區域性變數的值會覆蓋全域性變數的值。下面是乙個例項:

#include

<

iostream

>

using

namespace

std;

// 全域性變數宣告

intg=

20;int

main()

當上面的**被編譯和執行時,它會產生下列結果:

10
當區域性變數被定義時,系統不會對其初始化,您必須自行對其初始化。定義全域性變數時,系統會自動初始化為下列值:

資料型別

初始化預設值

int0

char

'\0'

float

0double

0pointer

null

正確地初始化變數是乙個良好的程式設計習慣,否則有時候程式可能會產生意想不到的結果。

C 之變數作用域

在函式或乙個 塊內部宣告的變數,稱為區域性變數。在函式引數的定義中宣告的變數,稱為形式引數。在所有函式外部宣告的變數,稱為全域性變數。整數常量可以是十進位制 八進位制或十六進製制的常量。字首指定基數 0x 或 0x 表示十六進製制,0 表示八進位制,不帶字首則預設表示十進位制。整數常量也可以帶乙個字...

JavaScript之變數 作用域

一.變數 1.基本型別值和引用型別值 js和其他語言一樣也分值型別和引用型別。在基本概念那篇部落格也紀錄了五種常見的基本資料型別 undefined null boolean number string。這五種都是按值訪問的基本資料型別,可以操作保持在變數中的實際的值.js和其他語言c 不同的是st...

Python之變數作用域

coding utf 8 file 變數作用域.py author date 2019 12 23 desc 變數的作用域決定了程式的哪一部分可以訪問哪個特定的變數名稱。python的作用域一共有4層,分別是 l local 區域性作用域 e enclosing 閉包函式外的函式中 g global...