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

正文內(nèi)容

第四章利用函數(shù)實(shí)現(xiàn)指定功能-文庫吧資料

2025-01-02 16:09本頁面
  

【正文】 ?內(nèi)聯(lián)函數(shù)的使用場合 1. 代碼不多,只有幾行語句 2. 沒有復(fù)雜結(jié)構(gòu)語句( switch和循環(huán)),否則將被當(dāng)作普通函數(shù) 3. 沒有遞歸調(diào)用 ? 說明 1. 代碼多時(shí),用普通函數(shù)是以時(shí)間換取空間 2. 代碼少時(shí),用內(nèi)聯(lián)函數(shù)是以空間換回時(shí)間,但卻保留了函數(shù)易讀、易改的優(yōu)點(diǎn) 內(nèi)聯(lián)函數(shù)中 , 不能包含復(fù)雜的控制語句 , 如循環(huán)語句和 switch分支語句 , 以及復(fù)雜嵌套的 if語句 。 return z。 } max函數(shù)不復(fù)存在 int max (int x, int y) { int z。 c=max (a+b , a*b) 。 } void main (void ) { int a,b,c。 z=(xy)? x : y 。 } 外部全局變量定義 外部全局變量說明 引用文件外定義的全局變量 內(nèi)聯(lián)函數(shù)的作用: ? 使用函數(shù)可以縮短代碼,但 函數(shù)調(diào)用時(shí) ,需要使用內(nèi)存中的棧來保留現(xiàn)場、傳遞參數(shù)并產(chǎn)生程序轉(zhuǎn)移,這樣就 影響了程序執(zhí)行速度 內(nèi)聯(lián)函數(shù) 主調(diào)函數(shù) 調(diào)用處 被調(diào)函數(shù) 主調(diào)函數(shù) 調(diào)用處 被調(diào)函數(shù) 將被調(diào)函數(shù)體的代碼直接插到調(diào)用處 內(nèi)聯(lián)函數(shù) ? C++提供一種提高效率的方法 ,即在編譯時(shí)將所調(diào)用函數(shù)的代碼直接嵌入到主調(diào)函數(shù)中 ,而不是將流程轉(zhuǎn)出去 ?這種嵌入到主調(diào)函數(shù)中的函數(shù)稱為 內(nèi)聯(lián)函數(shù) (inline function),又稱內(nèi)置函數(shù) ? 內(nèi)聯(lián)函數(shù)的定義 函數(shù)定義時(shí), 在函數(shù)的類型前增加修飾詞 inline。 i++) y*=a。 for (i=1。 } 文件 : extern int a。 d= power(m)。 c=a*b。 int b=3, c, d, m。 文件 : int a。 相當(dāng)于限制了全局變量的作用域范圍 。 靜態(tài)( static)存儲(chǔ)類別 extern 存儲(chǔ)類別 全局變量是在函數(shù)的外部定義的,編譯時(shí) 分配在靜態(tài)存儲(chǔ)區(qū),如果未賦初值,其值為 0。 coutyendl。 coutyendl。 } void main(void) { int x=2, y。 c=a+ b++。 程序區(qū) 靜態(tài)存儲(chǔ)區(qū) 動(dòng)態(tài)存儲(chǔ)區(qū) 全局變量 靜態(tài)局部變量 動(dòng)態(tài)局部變量 int fun(int a) { int c。 動(dòng)態(tài)存儲(chǔ):在程序運(yùn)行期間根據(jù)需要分配存儲(chǔ)空間,函數(shù)結(jié)束后立即釋放空間 。 float tt(int x , float y)。 cout” j=” j’ \n’ 。 //訪問全部變量 i和局部變量 j cout” ::i=” ::i’ \n’ 。 //訪問 局部變量 i ::i= ::i+4。 void main(void) { int i , j=50。 在塊作用域內(nèi)可通過作用域運(yùn)算符“::”來引用 與局部變量同名 的全局變量。 cout“ The min is” minendl。 c=max (a , b) 。 } void main (void) { int a,b,c。 z=(xy)? x : y 。 int max (int x, int y) { int z。 main( ) { int m, n。 float f1( int a) { int b,c。 當(dāng)在塊作用域內(nèi)的變量與全局變量同名時(shí), 局部變量優(yōu)先。 } a 2 b 3 c 5 2 3 5 7 2 5 a b 2 7 1 2 3 1 二、文件作用域 全局變量的作用域稱為文件作用域,即在整個(gè)文件中都是可以訪問的。 } c=ab。 a=b+c。 couta‘ \t’ b‘ \t’ cendl。 ..... } x,y,i,j 有效 a,b,c有效 m,n有效 注意: 具有塊作用域的標(biāo)識符在其作用域內(nèi) , 將屏蔽其作用塊包含本塊的同名標(biāo)識符 , 即 變量名相同 , 局部更優(yōu)先 。 ..... } float f2( int x, int y) { int i, j。 一 、 塊作用域 我們把用花括號括起來的一部分程序稱為一個(gè)塊。 } fac (5) n=5 y=5*fac (4) fac (4) n=4 y=4*fac (3) fac (3) n=3 y=3*fac (2) fac (2) n=2 y=2*fac (1) fac (1) n=1 y=1 return y return y y=2 return y y=6 return y y=24 return y y=120 作用域是指程序中所說明的標(biāo)識符在哪一個(gè)區(qū)間內(nèi)有效,即在哪一個(gè)區(qū)間內(nèi)可以使用或引用該標(biāo)識符 。 cinn 。 int n。 return y。 if ((n= =0)|| (n= =1) y=1。 必須有遞歸終止條件 。 return c。 if (n= =1) c=10。 coutage(5)endl。 return c。請問第 5個(gè)人多大? age(5)=age(4)+2 age(4)=age(3)+2 age(3)=age(2)+2 age(2)=age(1)+2 age(1)=10 age(n)= 10 n=1 age(n1)+2 n1 int age ( int n ) { int c。問第 2個(gè)人多少歲,他說比第 1個(gè)人大 2歲。問第 4個(gè)人多少歲,他說比第 3個(gè)人大 2歲。 //m^k的累加和 } 嵌套調(diào)用 嵌套調(diào)用 平行定義 平行定義 舉例 c44或教材例題 在調(diào)用一個(gè)函數(shù)的過程中直接或間接地調(diào)用函數(shù)本身,稱為函數(shù)的遞歸調(diào)用。 cinkm。 return sum。i=n。 } int sum_of_power(int k,int n) //n^k的累加和 { int i,sum=0。i++) product=product*m。 for(i=1。 函數(shù)可以嵌套調(diào)用,不可嵌套定義。} return b。} while(r=a%b) { a=b。 a=b。 } int gys(int a, int b) { int r。 cinxy。 return 1。ix/2。 i++) if(prime(i)==1)
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1