freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

section-04-函數(shù)-指針-引用(編輯修改稿)

2025-08-31 09:40 本頁面
 

【文章內(nèi)容簡介】 rn。一般來說,定義的外部類變量,在引用前需要說明。 特別是在下列兩種情況下,必須說明 : 同一個文件中的外部類變量,如果定義在后,引用在先,引用前必須說明; 在程序的一個文件中定義的外部類變量,要在該程序中的另一個文件中引用,則引用前必須說明。 如果一個外部類變量在一個文件中,先定義,后引用,則可以不必說明。 外部類變量被定義后,它就有默認(rèn)值, char型變量為空, int型變量為 0,float型、 double型變量為 。 例 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 21 C++中的靜態(tài)類變量: 內(nèi)部靜態(tài)類、外部靜態(tài)類 內(nèi)部靜態(tài)類變量的作用域同自動類變量,即作用域是定義或說明它的函數(shù)體或分程序內(nèi)。 只有在程序結(jié)束時才被釋放,其可見性和存在性是不一致的 。在它的作用域內(nèi)是可見的,也是存在的,但是超出它的作用域后,雖然不可見了,但還是存在的。 內(nèi)部靜態(tài)類變量被定義或說明后具有默認(rèn)值 。 外部靜態(tài)類變量的作用域是在定義或說明它的文件中,并且從定義或說明時起有效,直到該文件結(jié)束。其 作用域介于外部類和自動類(或內(nèi)部靜態(tài)類)變量之間 。它的 生存期與外部類變量相同 。靜態(tài)類變量和外部類變量都被存放在內(nèi)存的靜態(tài)工作區(qū) , 外部靜態(tài)類變量的可見性與存在性也是不一致的 。 注意: 可見性與存在性不一致是靜態(tài)類變量的特點 。 外部靜態(tài)類被定義或說明后也具有默認(rèn)值 。 靜態(tài)類變量在定義或說明時,都在其前面加存儲類說明符 static。 內(nèi)部靜態(tài)類與外部靜態(tài)類的區(qū)別是 :內(nèi)部靜態(tài)類定義在函數(shù)體或分程序內(nèi),而外部靜態(tài)類定義在函數(shù)體的外面。 總結(jié) :靜態(tài)類變量的特點如下: 定義或說明時須加上 static說明符; 可見性與存在性是不一致的,可見性范圍小,但存在性范圍大; 定義或說明后有默認(rèn)值。 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 22 C++中的內(nèi)部函數(shù)與外部函數(shù) 函數(shù)的存儲類可分為兩類: 內(nèi)部函數(shù) 和 外部函數(shù) 。 內(nèi)部函數(shù)是在定義它的文件中可以被調(diào)用,而在同一程序的其他文件不可以調(diào)用。 內(nèi)部函數(shù)的定義格式如下 : static 數(shù)據(jù)類型 函數(shù)名 ( 參數(shù)表及說明 ) { 函數(shù)體的若干語句 } 例 外部函數(shù)是一種作用域在整個程序中的函數(shù),包含該程序的所有文件都可以調(diào)用 。 外部函數(shù)的定義格式如下: extern 數(shù)據(jù)類型 函數(shù)名 ( 參數(shù)表及說明 ) { 函數(shù)體的若干語句 } 注意 : 通常,都省略關(guān)鍵字 extern。 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 23 C++中的指針 指針是一種特殊的變量 。它具有一般變量的三個要素 ,即: 名字 、類型 和 值 。指針的命名與一般變量的命名時相同的, 它與一般變量的區(qū)別在于類型和值 上。 指針的值: 指針是一種用來存放某個變量在內(nèi)存中的地址值的變量。因為任何一個變量被定義或說明后,它將被分配一個內(nèi)存單元,用來存放該變量的值,于是 被定義或說明的變量都有一個內(nèi)存地址值 。 一個指針存放了某個變量的地址值,就稱這個 指針指向被存放地址值的變量 。一個指針存放了哪個變量的地址值,該指針就指向那個變量。因此, 指針本身具有一個內(nèi)存地址值 ,另外,它還存放有它所指向的變量的地址值 。 指針的類型: 指針的類型 不是他所存放的某個變量的地址值的類型, 而是該指針?biāo)赶虻淖兞康念愋?。指針可以指向所有基本數(shù)據(jù)類型的變量,還可以指向構(gòu)造數(shù)據(jù)類型的變量。 指針與它所指向變量的關(guān)系: 變量名 內(nèi)存 地址值 …… a 5 1001H …… pa 1001H 2022H 兩個運算符是: amp。 和 * 。 存放某變量地址值的 變量 ;其 類型 為它所指向變量的類型;其 內(nèi)容 是它所指變量的值。 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 24 C++中指針的定義格式 定義指針與定義一般變量一樣,先要確定指針名,指出指針類型,并 在指針名前加上 *,表示后面的名字為指針名, 可以賦初值,也可以不賦初值 。格式如下: 類型 *指針名 1, *指針名 2, …… ; int *pi, *pm。 char *pc。 double *pd。 int (*pa)[3]。 int (*pf)()。 int **pp。 pi和 pm分別表示指向 int型變量的指針; pa是一個指向一個具有 3個 int型元素的一維數(shù)組的指針; pf是指向返回值為 int型值的函數(shù)的指針。 pp是一個指向指針的指針。 注意: 定義一個指針后,系統(tǒng)將為該指針分配一個內(nèi)存單元。不同類型的指針?biāo)峙涞膬?nèi)存單元的大小是相同的 ,因為類型不同的指針?biāo)娣诺臄?shù)據(jù)值都是內(nèi)存地址。 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 25 C++中指針的賦值 指針與一般變量一樣,也可以被賦值或被賦初值(此時應(yīng)該將內(nèi)存的地址值賦給指針變量)。 不同類型的變量的地址值表示方法有所不同 ,下面舉例說明: int b, a[5]。 int *p1, *p2。 p1 = amp。b。 p2 = amp。a[3]。 int b[2][3]。 int (*p)[3]。 p = b。 int f(int x)。 int (*pf)()。 pf = f。 p是一個指向一維數(shù)組( 3個元素)的指針,而 b是一個二維數(shù)組的數(shù)組名,他本身是二維數(shù)組 b的第 0行的地址。將 b賦值給 p,即讓指針 p指向二維數(shù)組 b的首行。一個二維數(shù)組可以看成由若干行組成的數(shù)組,每一行對應(yīng)于一個一維數(shù)組。 pf是一個指向函數(shù)的指針,這里, pf指向函數(shù) f()。 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 26 C++中指針的運算 指針是一種特殊的變量,它 僅允許下述 4種運算 : 賦值 運算,可以賦初值或者賦值 一個指針可以 加減一個整數(shù) 兩個 指針 在一定條件下可以相加減 兩個 指針 在一定條件下可以相比較 在給指針賦值時,應(yīng)該注意如下事項: 給指針?biāo)x的值應(yīng)是它 所指向的變量的地址值 ; 要求 指針的類型應(yīng)與它所指向的變量的類型相同,并且級別一致 。 類型相同是指 : int型指針只能接收 int型變量的地址值。 級別一致是指 :一級指針只能接收一般變量和數(shù)組元素的地址值,而不能接收一個二維數(shù)組的數(shù)組名,因為 二維數(shù)組名相當(dāng)于二級指針 。 一個暫時不用的指針可 賦值 0(或者 NULL) 。 定義的任何指針 在沒有給確定的地址值前絕對不能使用 。因為指針?biāo)赶虻臄?shù)據(jù)可能是無效的。 可以將一個已被賦值的指針賦值給另外一個相同類型的指針。 指針運算實際上是地址運算,但是指針運算又不同于地址運算 ,如: 注意 p+1 與 (int)p+1 的區(qū)別。 int a[10], *p = a。 例 例 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 27 C++中數(shù)組名是一常量指針 C++規(guī)定:數(shù)組名是一個常量指針,而且一個數(shù)組的數(shù)組名便是該數(shù)組的首元素的地址值。常量指針的值是不能被改變的!?。? int GetStrLen(char a[]) { char *p = a。 int i = 0。 while(a[i++] != ?\0?) p++。 return p a。 } p是一個變量指針, a是一個常量指針。 p可以加減一個整數(shù)(包括增 1或減 1), a是一個常量指針,因此不能換成 a++。 返回字符串a(chǎn)的長度。 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 28 C++中數(shù)組元素的指針表示 在 C++中, 數(shù)組可以用下標(biāo)表示,也可以用指針表示 。系統(tǒng)規(guī)定: 用指針表示要比用下標(biāo)表示時運行效率高 。因此,建議在程序中應(yīng)該盡量使用指針表示數(shù)組。 一維數(shù)組元素的指針表示: int a[10]。 數(shù)組元素 a[i]對應(yīng)的指針表示為: *(a + i)。 例 二維數(shù)組元素的指針表示: 例 一個二維數(shù)組可以看成由行數(shù)組和列數(shù)組組成的,行數(shù)組和列數(shù)組都是一維數(shù)組。因此: b為數(shù)組第 0行的地址, b+1為數(shù)組第一行的地址; b[0]為 數(shù)組第 0行的首列地址, b[i]為第 i行的首列地址。 b[i]+j為第 i行第 j列元素的地址 int b[3][5]。 數(shù)組元素 b[i][j] 對應(yīng)的指針表示可以為以下任何一種: *(amp。b[0][0] + 5 * i + j) *(*(b + i) + j) (*(b + i))[j] *(b[i] + j) 程序設(shè)計 amp。 數(shù)據(jù)結(jié)構(gòu) 數(shù)學(xué)系計算數(shù)學(xué)教研室 29 C++中的字符數(shù)組、字符指針、字符串 字符數(shù)組和字符串 字符串一般存放在一維字符數(shù)組中,而一維字符數(shù)
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1