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

正文內(nèi)容

c語言程序設(shè)計函數(shù)調(diào)用-在線瀏覽

2025-03-01 17:30本頁面
  

【正文】 義數(shù)組名后面跟一個空的方括弧,為了在被調(diào)函數(shù)中處理數(shù)組元素的需要,可以另設(shè)參數(shù),說明傳遞數(shù)組元素的個數(shù)。 ? int n。 ? float v, sum=a[ 0] 。in。 ? v=。 ? } ? main() ? { ? float score1[ 5] ={ , 97, , 60, 55} 。 ? printf( ″the average of class1is% \n″ , ? average( score1, 5)) 。 ? } ? 運行結(jié)果 : the average of class1is ? the average of class2is ? 這么處理數(shù)組的大小就可以不同。如圖 . ? 假如 a數(shù)組的起始地址為 1000,則 s數(shù)組的起始地址也為1000,顯然, a和 s同占一段內(nèi)存單元。 ? 這種傳遞方式叫 “ 地址傳遞 ” 。這一點與變量函數(shù)參數(shù)的情況不同。這些變量分別稱為局部變量、形式參數(shù)變量、全局變量。有關(guān)形式參數(shù)已經(jīng)介紹過。形參也是局部變量。也就是說,只能在定義該變量的函數(shù)內(nèi)使用它,在此函數(shù)以外不能使用。因此在 C語言中不同的函數(shù)內(nèi)可以定義相同名字的變量,它們代表的對象不同,互不影響。 ? a=5。 ? … ? } 局部變量 a, b的作用域 ? f2() ? { ? int a, b。b=200。其原因是每個 a、 b作為局部變量僅在被定義的函數(shù)內(nèi)是可知的。例如 : 局部變量 a, b的作用域 ? f( x) ? int x。 ? … ? if( x0) ? { ? int b=40。 b的作用域 x、 a的作用域 ? 全局變量 ? 全局變量又稱做外部變量,是在函數(shù)外部定義的變量。 ? 若在同一個源文件中,局部變量與全局變量同名,則在局部變量的作用范圍內(nèi),全局變量被屏蔽,不起作用。 ? int a=1, b=5。 ? { ? int c, d。 ? char f2( x, y) ? int x, y。 … ? } ? main() ? { ? int m, n。在main函數(shù)和函數(shù) f2中可以使用全局變量 a、 b、 c c2,但在函數(shù) f1中,只能使用全局變量 a、 b,而不能使用 c1和 c2。由于同一文件中的所有函數(shù)都能引用全局變量的值,因此,如果在一個函數(shù)中改變了全局變量的值,就能影響到其他函數(shù),相當于各個函數(shù)間有直接的傳遞通道。 ? 對于全局變量,如果在定義時不進行初始化,則系統(tǒng)將自動賦予其初值,對數(shù)值型賦 0,對于字符型賦空 ′ \0′ 。使用全局變量,還會降低函數(shù)通用性 ,而且會降低程序的清晰度。 ? ( 3)在定義全局變量時,最理想的定義位置是在源文件的開頭處,這樣,在整個文件中的所有函數(shù)均可使用該變量。如果在定義點之前的函數(shù)想引用該外部變量,則應(yīng)該在該函數(shù)中用關(guān)鍵字 extern作 “ 外部變量說明 ” 。見例. ? 例 求兩個數(shù)的最大值。 ? { ? int z。 ? return( z) 。 /* 外部變量說明 */ ? printf( ″max=%d \n″ , max( a, b)) 。 /* 外部變量定義 */ ? 運行結(jié)果 : ? max=120 ? 由于外部變量定義在 main函數(shù)之后,因此在 main函數(shù)引用外部變量 a和 b之前,應(yīng)該用 extern進行外部變量說明,說明 a、b是外部變量。一般的做法是外部變量的定義放在引用它的所有函數(shù)之前,這樣可以避免在函數(shù)中多加一個extern說明。外部變量的定義只能有一次,它的位置在所有函數(shù)之外,而同一文件中的外部變量的說明可以有多次,它的位置在函數(shù)之內(nèi)。 ? 例 求兩個數(shù)的最大值。 /*a、 b為外部變量 */ a、 b的作用范圍 ? max( a, b) ? int a, b。 ? c=ab?a:b。 ? } ? main() ? { ? int a=10。 ? } ? 運行結(jié)果 : ? max=10 形參 a、 b作用范圍 局部變量 a作用范圍 全局變量 b作用范圍 ? 第一行定義了外部變量 a、 b,并使之初始化。函數(shù) max中的 a、b不是外部變量 a、 b,它們的值是由實參傳給形參的,外部變量a、 b在 max函數(shù)范圍內(nèi)不起作用。因此 printf函數(shù)中的 max( a, b)相當于 max( 10, 5),程序運行后得到結(jié)果為 10。 ? 從變量值存在時間(即生存期)角度來分,可以分為靜態(tài)存儲方式和動態(tài)存儲方式。 ? ? 是指在程序運行期間根據(jù)需要進行動態(tài)的分配存儲空間的方式。 ? ( 2)靜態(tài)存儲區(qū) 。 ? 數(shù)據(jù)分別存放在靜態(tài)存儲區(qū)和動態(tài)存儲區(qū)中。在程序開始執(zhí)行時給全局變量分配存儲區(qū) ,程序執(zhí)行完畢就釋放。 ? 局部變量存放在動態(tài)存儲區(qū)中,在函數(shù)調(diào)用開始時分配動態(tài)存儲空間,函數(shù)結(jié)束時釋放這些空間。 ? 在動態(tài)存儲區(qū)中存放以下數(shù)據(jù) : ? ① 函數(shù)形參變量 。未加 static說明的局部變量,即自動變量。 ? 對以上這些數(shù)據(jù),在函數(shù)調(diào)用開始時分配動態(tài)存儲空間,函數(shù)結(jié)束時,釋放這些空間。如果一個程序包含了若干個函數(shù),每個函數(shù)中的局部變量的生存期并不等于整個程序的執(zhí)行周期,它只是程序執(zhí)行周期的一部分。 ? 在 C語言中每一個變量和函數(shù)有兩個屬性 :數(shù)據(jù)類型和數(shù)據(jù)的存儲類別。 ? 具體包括 4種 :自動( auto) 。寄存器 (reg ? ister) 。 ? 局部變量的存儲方式 ? ? 函數(shù)中的局部變量,如不為 static存儲類別都是動態(tài)分配存儲空間的,存儲在動態(tài)存儲區(qū)中,分配和釋放存儲空間的工作由編譯系統(tǒng)自動處理,因此這類局部變量稱為自動變量。例如 : 當局部變量未指明存儲類別時,被定義為 auto存儲類別。 /*定義 a為形參 */ ? { ? auto int b, c=9。 ? auto也可以省略不寫,則隱含確定為 “ 自動存儲類別 ” ,它屬于動態(tài)存儲類別。與 int b, c=9。 ? ? 存儲分類符 static既可用于說明全局變量,也可用于說明局部變量。其作用于全局變量時,該變量稱為外部靜態(tài)變量。在程序運行期間,它占據(jù)一個永久性的存儲單元,在退出函數(shù)后,值仍舊保留。未賦初值的變量, C編譯程序?qū)⑵渲脼?0。 ? 例 ? main() ? { ? f1() 。
點擊復制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1