亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于C語言函數形參的問題

關于C語言函數形參的問題

C
撈撈 2015-09-06 08:39:13
例如:為什么int getnum(n)也可以執行代碼而不是用int getnum(int n)
查看完整描述

3 回答

已采納
?
onemoo

TA貢獻883條經驗 獲得超454個贊

聲明形參(parameter)時省略了類型的話,則默認類型為int,這個特性叫隱式聲明。 C語言甚至連函數都有可能被隱式聲明...

你這個代碼中,隱式聲明恰好和預期的類型一致,編譯運行也就沒有出現錯誤,不過這樣的代碼在編譯時會有警告的。

C語言有很多奇奇怪怪的特性,一大部分是歷史遺留問題?,F實中絕對不要這樣寫!

查看完整回答
反對 回復 2015-09-06
?
Virture

TA貢獻24條經驗 獲得超4個贊

其實int n 的n(為n1)和getnum的n(為n2)是不一樣的,n1是用來接收n2的,聲明接收的參數不一定要int n,int a等都行

查看完整回答
反對 回復 2015-09-06
?
onemoo

TA貢獻883條經驗 獲得超454個贊

這是函數聲明嗎? 這樣不行吧???

寫出詳細的代碼看看

查看完整回答
反對 回復 2015-09-06
  • 撈撈
    撈撈
    #include <stdio.h> int getPeachNumber(n) { int num; //定義所剩桃子數 if(n==10) { return 1; //遞歸結束條件 } else { num = (getPeachNumber(n+1)+1)*2; //這里是不應該用遞歸呢? printf("第%d天所剩桃子%d個\n", n, num); //天數,所剩桃子個數 } return num; } int main() { int num = getPeachNumber(1); printf("猴子第一天摘了:%d個桃子。\n", num); return 0; } 我是在5-8那里的代碼,就是不明白為什么參數沒有寫類型都可以運行
  • 3 回答
  • 0 關注
  • 1655 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號