91丨国产丨白浆秘 喷水,国产熟妇毛多 A片欧美蜜臀,北京熟妇搡BBBB搡BBBB,国产精品人人做人人爽人人添

  您的位置: 【卓安特保-您身邊的護(hù)衛(wèi)專(zhuān)家】山東卓安安防工程有限公司,電話(huà)13361029977 >> 安防資訊 >> 卓安安防 >> JAVA編程
 閱讀文章

形參和實(shí)參的區(qū)別

  文章作者:網(wǎng)絡(luò)來(lái)源:網(wǎng)絡(luò)轉(zhuǎn)摘瀏覽次數(shù):6795字體:字體顏色
 閱讀權(quán)限:游客身份花費(fèi)會(huì)員幣:0添加時(shí)間:2020/4/7 23:15:58提交會(huì)員:李漠

如果把函數(shù)比喻成一臺(tái)機(jī)器,那么參數(shù)就是原材料,返回值就是最終產(chǎn)品;從一定程度上講,函數(shù)的作用就是根據(jù)不同的參數(shù)產(chǎn)生不同的返回值。

這一節(jié)我們先來(lái)講解C語(yǔ)言函數(shù)的參數(shù)。
C語(yǔ)言函數(shù)的參數(shù)會(huì)出現(xiàn)在兩個(gè)地方,分別是函數(shù)定義處和函數(shù)調(diào)用處,這兩個(gè)地方的參數(shù)是有區(qū)別的。

形參(形式參數(shù))

在函數(shù)定義中出現(xiàn)的參數(shù)可以看做是一個(gè)占位符,它沒(méi)有數(shù)據(jù),只能等到函數(shù)被調(diào)用時(shí)接收傳遞進(jìn)來(lái)的數(shù)據(jù),所以稱(chēng)為形式參數(shù),簡(jiǎn)稱(chēng)形參。

實(shí)參(實(shí)際參數(shù))

函數(shù)被調(diào)用時(shí)給出的參數(shù)包含了實(shí)實(shí)在在的數(shù)據(jù),會(huì)被函數(shù)內(nèi)部的代碼使用,所以稱(chēng)為實(shí)際參數(shù),簡(jiǎn)稱(chēng)實(shí)參

形參和實(shí)參的功能是傳遞數(shù)據(jù),發(fā)生函數(shù)調(diào)用時(shí),實(shí)參的值會(huì)傳遞給形參。

形參和實(shí)參的區(qū)別和聯(lián)系

1) 形參變量只有在函數(shù)被調(diào)用時(shí)才會(huì)分配內(nèi)存,調(diào)用結(jié)束后,立刻釋放內(nèi)存,所以形參變量只有在函數(shù)內(nèi)部有效,不能在函數(shù)外部使用。

2) 實(shí)參可以是常量、變量、表達(dá)式、函數(shù)等,無(wú)論實(shí)參是何種類(lèi)型的數(shù)據(jù),在進(jìn)行函數(shù)調(diào)用時(shí),它們都必須有確定的值,以便把這些值傳送給形參,所以應(yīng)該提前用賦值、輸入等辦法使實(shí)參獲得確定值。

3) 實(shí)參和形參在數(shù)量上、類(lèi)型上、順序上必須嚴(yán)格一致,否則會(huì)發(fā)生“類(lèi)型不匹配”的錯(cuò)誤。當(dāng)然,如果能夠進(jìn)行自動(dòng)類(lèi)型轉(zhuǎn)換,或者進(jìn)行了強(qiáng)制類(lèi)型轉(zhuǎn)換,那么實(shí)參類(lèi)型也可以不同于形參類(lèi)型。

4) 函數(shù)調(diào)用中發(fā)生的數(shù)據(jù)傳遞是單向的,只能把實(shí)參的值傳遞給形參,而不能把形參的值反向地傳遞給實(shí)參;換句話(huà)說(shuō),一旦完成數(shù)據(jù)的傳遞,實(shí)參和形參就再也沒(méi)有瓜葛了,所以,在函數(shù)調(diào)用過(guò)程中,形參的值發(fā)生改變并不會(huì)影響實(shí)參。

請(qǐng)看下面的例子:

#include <stdio.h>

 
  1. //計(jì)算從m加到n的值
  2. int sum(int m, int n) {
  3.     int i;
  4.     for (i = m+1; i <= n; ++i) {
  5.         m += i;
  6.     }
  7.     return m;
  8. }
  9. int main() {
  10.     int a, b, total;
  11.     printf("Input two numbers: ");
  12.     scanf("%d %d", &a, &b);
  13.     total = sum(a, b);
  14.     printf("a=%d, b=%d\n", a, b);
  15.     printf("total=%d\n", total);
  16.     return 0;
  17. }

運(yùn)行結(jié)果:
Input two numbers: 1 100↙
a=1, b=100
total=5050

在這段代碼中,函數(shù)定義處的 m、n 是形參,函數(shù)調(diào)用處的 a、b 是實(shí)參。通過(guò) scanf() 可以讀取用戶(hù)輸入的數(shù)據(jù),并賦值給 a、b,在調(diào)用 sum() 函數(shù)時(shí),這份數(shù)據(jù)會(huì)傳遞給形參 m、n。

從運(yùn)行情況看,輸入 a 值為 1,即實(shí)參 a 的值為 1,把這個(gè)值傳遞給函數(shù) sum() 后,形參 m 的初始值也為 1,在函數(shù)執(zhí)行過(guò)程中,形參 m 的值變?yōu)?5050。函數(shù)運(yùn)行結(jié)束后,輸出實(shí)參 a 的值仍為 1,可見(jiàn)實(shí)參的值不會(huì)隨形參的變化而變化。

以上調(diào)用 sum() 時(shí)是將變量作為函數(shù)實(shí)參,除此以外,你也可以將常量、表達(dá)式、函數(shù)返回值作為實(shí)參,如下所示:

 
  1. total = sum(10, 98);  //將常量作為實(shí)參
  2. total = sum(a+10, b-3);  //將表達(dá)式作為實(shí)參
  3. total = sum( pow(2,2), abs(-100) );  //將函數(shù)返回值作為實(shí)參

5) 形參和實(shí)參雖然可以同名,但它們之間是相互獨(dú)立的,互不影響,因?yàn)閷?shí)參在函數(shù)外部有效,而形參在函數(shù)內(nèi)部有效。

更改上面的代碼,讓實(shí)參和形參同名:

 
  1. #include <stdio.h> 
  2. //計(jì)算從m加到n的值
  3. int sum(int m, int n) {
  4. int i;
  5. for (i = m + 1; i <= n; ++i) {
  6. m += i;
  7. }
  8. return m;
  9. }
  10.  
  11. int main() {
  12. int m, n, total;
  13. printf("Input two numbers: ");
  14. scanf("%d %d", &m, &n);
  15. total = sum(m, n);
  16. printf("m=%d, n=%d\n", m, n);
  17. printf("total=%d\n", total);
  18.  
  19. return 0;
  20. }

結(jié)果:
Input two numbers: 1 100
m=1, n=100
total=5050


調(diào)用 sum() 函數(shù)后,函數(shù)內(nèi)部的形參 m 的值已經(jīng)發(fā)生了變化,而函數(shù)外部的實(shí)參 m 的值依然保持不變,可見(jiàn)它們是相互獨(dú)立的兩個(gè)變量,除了傳遞參數(shù)的一瞬間,其它時(shí)候是沒(méi)有瓜葛的。
·上篇文章:JAVA繼承的概念
·下篇文章:JAVA關(guān)鍵字
復(fù)制 】 【 打印
 相關(guān)文章
沒(méi)有相關(guān)文章
特別聲明:本站除部分特別聲明禁止轉(zhuǎn)載的專(zhuān)稿外的其他文章可以自由轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處和原始作者。文章版權(quán)歸文章原始作者所有。對(duì)于被本站轉(zhuǎn)載文章的個(gè)人和網(wǎng)站,我們表示深深的謝意。如果本站轉(zhuǎn)載的文章有版權(quán)問(wèn)題請(qǐng)聯(lián)系我們,我們盡快予以更正,謝謝。
關(guān)于我們 | 業(yè)務(wù)范圍 | 免責(zé)聲明 | 聯(lián)系我們 | 友情連接
版權(quán)所有 Copyright © 2007 【卓安特保-您身邊的護(hù)衛(wèi)專(zhuān)家】山東卓安安防工程有限公司,電話(huà)13361029977 All Rights Reserved.
魯ICP備11024361號(hào)-5    頁(yè)面執(zhí)行時(shí)間:15.63MS
无码成人AAAA级婬片 | 国产精品人体视频 | 日本级婬乱片A片AAA毛片A | 最好看的MV中文字幕国语电影 | 全免费又大粗又黄又爽少妇片 | 人人澡人人爽国产一区 | 日韩精品人妻无码一二三蜜臀 | 中文字幕一区二区三区四区五区 | 欧美日韩一区二区精品 | 免费看欧美一级特黄a大片 99国产精品久久久久久久 | 欧美精品乱码视频一二专区 | 精品999久久久一级毛片 | 影音先锋在线看片资源 | 波多野结衣中文字幕在线播放 | 国产麻豆精品一区二区三区91 | 国产精品久久久久久久久久久久人四虎 | 亚洲午夜精品一区二区 | 欧美日韩在线不卡 | 国产人妻精品一区二区三区秋霞 | 国产又黄又猛又粗又爽无遮挡 | 国产性猛片XXXXX免费 | 懂色av中文字幕一区二区三区天美 | 无码人妻专区一区二区触手 | 久久午夜伦鲁片A级毛片A片美腿 | 亚洲午夜精品久久久久久app_97人 | 亚洲精品一区二区三区中文字幕 | 无遮无挡试看120秒动态图 | 成人性生交大免费看3分钟 国产成人无码精品aa免费 | 日本乱偷人妻中文字幕电影 | 亚洲a无码综合a国产av中文 | 精品人妻无码一区二区三区蜜臀 | 午夜成人福利网站一区 | 亚洲天堂AV在线观看 | 波多野结衣大喷高潮视频 | 中文字幕人成乱码熟女香港 | 艳妇乳肉浩妇荡乳aV 无码福利 | 91精品一区二区三区蜜桃 | 高清无码免费视频在线观看 | 搡6070老女人老熟女的意思 | 久久久久久久久久久久久久动漫 | 色好屌,这里只有精品 |