亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

深入理解C++編程中的局部變量和全局變量

2020-05-23 14:15:21
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了深入理解C++編程中的局部變量和全局變量,是C++入門學習中的基礎知識,需要的朋友可以參考下

局部變量

在一個函數內部定義的變量是內部變量,它只在本函數范圍內有效,也就是說只有在本函數內才能使用它們,在此函數以外是不能使用這些變量的。同樣,在復合語句中定義的變量只在本復合語句范圍內有效。這稱為局部變量(local variable)。如:

深入理解C++編程中的局部變量和全局變量

對局部變量的一些說明:

1) 主函數main中定義的變量(m, n)也只在主函數中有效,不會因為在主函數中定義而在整個文件或程序中有效。主函數也不能使用其他函數中定義的變量。

2) 不同函數中可以使用同名的變量,它們代表不同的對象,互不干擾。例如,在f1函數中定義了變量b和c,倘若在f2函數中也定義變量b和c,它們在內存中占不同的單元,不會混淆。

3) 可以在一個函數內的復合語句中定義變量,這些變量只在本復合語句中有效,這種復合語句也稱為分程序或程序塊。

4) 形式參數也是局部變量。例如f1函數中的形參a也只在f1函數中有效。其他函數不能調用。

5) 在函數聲明中出現的參數名,其作用范圍只在本行的括號內。實際上,編譯系統對函數聲明中的變量名是忽略的,即使在調用函數時也沒有為它們分配存儲單元。例如:

 

 
  1. int max(int a, int b);//函數聲明中出現a、b 
  2. int max(int x, int y) //函數定義,形參是x、y 
  3. cout<<x<<y<<endl; //合法,x、y在函數體中有效 
  4. cout<<a<<b<<endl; //非法,a、b在函數體中無效 

編譯時認為max函數體中的a和b未經定義。

全局變量

前面已介紹,程序的編譯單位是源程序文件,一個源文件可以包含一個或若干個函數。在函數內定義的變量是局部變量,而在函數之外定義的變量是外部變量,稱為全局變量(global variable,也稱全程變量)。全局變量的有效范圍為從定義變量的位置開始到本源文件結束。如:

深入理解C++編程中的局部變量和全局變量

p、q、c1、c2都是全局變量,但它們的作用范圍不同,在main函數和f2函數中可以使用全局變量p、q、c1、c2,但在函數f1中只能使用全局變量p、q,而不能使用c1和c2。

在一個函數中既可以使用本函數中的局部變量,又可以使用有效的全局變量。

對全局變量的一些說明:

1) 設全局變量的作用是增加函數間數據聯系的渠道。

2) 建議不在必要時不要使用全局變量,因為:

全局變量在程序的全部執行過程中都占用存儲單元,而不是僅在需要時才開辟單元。

它使函數的通用性降低了,因為在執行函數時要受到外部變量的影響。如果將一個函數移到另一個文件中,還要將有關的外部變量及其值一起移過去。但若該外部變量與其他文件的變量同名,就會出現問題,降低了程序的可靠性和通用性。在程序設計中,在劃分模塊時要求模塊的內聚性強、與其他模塊的耦合性弱。即模塊的功能要單一(不要把許多互不相干的功能放到一個模塊中),與其他模塊的相互影響要盡量少,而用全局變量是不符合這個原則的。

一般要求把程序中的函數做成一個封閉體,除了可以通過“實參——形參”的渠道與外界發生聯系外,沒有其他渠道。這樣的程序移植性好,可讀性強。

使用全局變量過多,會降低程序的清晰性。在各個函數執行時都可能改變全局變量的值,程序容易出錯。因此,要限制使用全局變量。

3) 如果在同一個源文件中,全局變量與局部變量同名,則在局部變量的作用范圍內,全局變量被屏蔽,即它不起作用。

變量的有效范圍稱為變量的作用域(scope)。歸納起來,變量有4種不同的作用域、文件作用域(file scope)、函數作用域(function scope)、塊作用域(block scope)和函數原型作用域(function prototype scope)。文件作用域是全局的,其他三者是局部的。

除了變量之外,任何以標識符代表的實體都有作用域,概念與變量的作用域相似。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
伊人亚洲福利一区二区三区| 欧美视频在线观看 亚洲欧| 日韩精品一区二区视频| 精品视频在线播放| 久久久国产影院| 亚洲日韩中文字幕| 亚洲免费视频观看| 日韩中文字幕精品| 欧美激情高清视频| 欧美综合在线第二页| 欧美成人中文字幕| 国产成人精品一区二区三区| 欧美日韩视频免费播放| 最好看的2019的中文字幕视频| 欧美电影院免费观看| 亚洲第一国产精品| 欧美裸体视频网站| 日韩电影中文字幕| 成人黄色av免费在线观看| 久久99亚洲精品| 国产精品三级久久久久久电影| 97精品一区二区三区| 激情懂色av一区av二区av| 日韩三级成人av网| 欧美成人合集magnet| 精品国产91乱高清在线观看| 欧美国产日韩一区二区在线观看| 久久精品亚洲热| 欧美丰满少妇xxxxx做受| 最近免费中文字幕视频2019| 欧美另类69精品久久久久9999| 亚洲国产成人久久综合一区| 成人激情春色网| 久久久综合av| 欧美成人免费视频| 国产精品扒开腿做| 欧美日韩激情视频| 久久偷看各类女兵18女厕嘘嘘| 精品国产1区2区| 亚洲精品视频网上网址在线观看| 国产一区av在线| 欧美高清视频一区二区| 亚洲国产精品va在线观看黑人| 欧美中文字幕第一页| 国产精品极品美女在线观看免费| 色悠久久久久综合先锋影音下载| 欧美成人免费播放| 97精品国产91久久久久久| 国产精品美女久久| 亚洲精品999| 久久久久久久国产精品| 久久久久成人精品| 精品国产91乱高清在线观看| 欧美日韩性视频在线| 成人免费视频网址| 欧美日韩国产区| 成人日韩在线电影| 欧美精品videos性欧美| 92裸体在线视频网站| 影音先锋日韩有码| 成人激情视频网| 日韩精品福利网站| 亚洲欧美综合图区| 国产精品成人av在线| 欧美激情亚洲国产| 国产精品久久久久久中文字| 日韩av不卡电影| 欧美在线视频观看免费网站| 欧美劲爆第一页| 另类色图亚洲色图| 久久久免费精品视频| 欧美性视频精品| 久久久久日韩精品久久久男男| 国产精品久久77777| 国产精品美女www爽爽爽视频| 国内精品久久久久影院优| 国产精品成人久久久久| 亚洲bt欧美bt日本bt| 久久久国产视频| 欧美日韩中文字幕在线| 亚洲视频第一页| 中文国产成人精品久久一| 久久亚洲国产精品| 精品视频久久久久久| 久久国产精品偷| 国产成人avxxxxx在线看| 欧美日韩国产一区二区| 亚洲国产精品久久精品怡红院| 91亚洲va在线va天堂va国| 91成人在线播放| 一本一本久久a久久精品牛牛影视| 久久精品久久久久| 久久99亚洲精品| 91精品成人久久| 精品国产网站地址| 欧美另类99xxxxx| 午夜免费久久久久| 欧美一区第一页| 中文字幕亚洲第一| 亚洲va码欧洲m码| 97在线日本国产| 日韩欧美极品在线观看| 日韩中文字幕欧美| 精品欧美一区二区三区| 黄色精品一区二区| 欧美激情视频一区二区| 中文字幕亚洲图片| 色中色综合影院手机版在线观看| 中文字幕av一区中文字幕天堂| 欧美激情亚洲另类| 亚洲中国色老太| 亚洲国产天堂网精品网站| 欧美国产日韩一区二区在线观看| 亚洲国产精品yw在线观看| 欧美日韩美女在线观看| 人人做人人澡人人爽欧美| 中文字幕精品久久| 国内揄拍国内精品少妇国语| 国产精品91视频| 欧美成人中文字幕在线| 午夜欧美不卡精品aaaaa| 精品免费在线观看| 欧美日韩精品在线| 亚洲欧美在线免费| 精品国产精品三级精品av网址| 91精品久久久久久久久久久久久| 456国产精品| 欧美日韩国产一中文字不卡| 欧美中文字幕第一页| 精品国内亚洲在观看18黄| 91免费看视频.| 亚洲日本aⅴ片在线观看香蕉| 国产va免费精品高清在线| 欧美日韩国产区| 91久久久久久久一区二区| 亚洲人成五月天| 久久亚洲精品中文字幕冲田杏梨| 久久成人免费视频| 国产剧情久久久久久| 性欧美xxxx视频在线观看| 亚洲变态欧美另类捆绑| 欧美精品成人91久久久久久久| 九九热这里只有精品免费看| 综合久久五月天| 91精品在线看| 欧美性猛交xxxx乱大交| 国产精品久久久久av免费| 欧美激情手机在线视频| 成人国产精品免费视频| 亚洲最大福利网| 国产极品jizzhd欧美| 欧美日韩国产一区二区| 亚洲va久久久噜噜噜久久天堂| 亚洲高清不卡av| 不卡毛片在线看| 日产日韩在线亚洲欧美| 一区二区三区 在线观看视| 亚洲国产成人av在线| 亚洲女人天堂成人av在线| 国产精品香蕉av| 日本精品久久久久久久| 国产精品福利在线观看| 国产精品一区二区久久久| 久久精品久久久久|