C 中為什麼在函式宣告中引數可以只註明資料型別而不是寫出引數變數名

2021-04-19 08:29:19 字數 1700 閱讀 9261

1樓:蓬密公西夢安

不行,標準c++規定任何不同型別的實體不能同名,後來c++標準引入了函式過載機制,允許多個函式擁有同一個名字,但是引數列表必須不同,但是變數和變數之間,函式和變數之間就不能同名了。

2樓:

宣告 而已 又不是定義函式 及其引數變數

編譯器 找到宣告 只做型別檢查的 ,當然不需要寫上變數名

3樓:翔子菊子

編譯器只需要知道是什麼型別的,就可以給函式的引數對應臨時變數分配空間了,具體叫什麼,這個無所謂的。

c++中函式名和變數名相同不行嗎?

4樓:哎呀

c++的語法規定:

1、變數、函式、結

構、類 ……等等,在相同的一個作用域中內,只能有一個唯容一的名稱。

2、全域性變數與區域性變數可重名,同名情況下優先認可區域性變數而不認可全域性變數。

3、特別提示,這些規定在不同的程式設計器、程式設計環境下不盡相同,有的程式設計環境下,類與函式重名並不報錯。日常程式設計時,要自已注意規避容易誤解的重名。一般重名變數的定義只用在一些非關鍵性的變數上,比如迴圈計數器之類的,並且使用前都會置零。

5樓:匿名使用者

c++程式設計時最好bai

不要將變數名與函du數同名,否則zhi經常出現一些二義性錯dao

誤。比如在主函式版中的權choice,編譯器將它理解為是函式名而不是變數名,這樣一來在引數中填入一個函式名,就和chocie的宣告不一致了,所以就出錯了。

6樓:匿名使用者

對 很明顯抄的二義性 程式不知襲道該呼叫哪bai個所以得改 糾正自己的變成du

寫法 比如函式名

zhi第一個字母小寫 其後每dao個單詞首字母大寫 如adfquality 而變數名可採用全大寫 adcquality之類的

這樣可以完全區別

7樓:匿名使用者

可以一樣的,沒有要求,最好用的時候不要一樣了。影響程式的可讀性。不利於以後的修改查錯。自己都難分清了,要讓別人讀你的程式,也就更不好理解了。

8樓:匿名使用者

不允許在相同的儲存區有相同的識別符號。如動態儲存區和靜態儲存區可以存在相同的識別符號。

c++中函式的形式引數名可以省略麼?

9樓:匿名使用者

int tt(int); 這裡這樣寫,是bai函式聲du明,可以沒有形參

zhi,只要有形參型別就可以!

dao在函式定義時,回不能省形參,如:

int tt( int x ) //這裡答不可少x!

10樓:須佐完全體

函式宣告時,形參可以沒有引數名(形參),函式定義時,一定要有引數名(形參),函式呼叫時,一定要有引數名(實參)。

11樓:菲菲大愛

int tt(int); 這裡這樣寫,是函式宣告,可以沒有形參,只要有形參型別就可以.

在函版數定義時,不能省權形參,如:

int tt( int x ) //這裡不可少x.

12樓:匿名使用者

c++中函式的形式引數名在函式宣告時可以省略,定義時不行。

還有任何情況下都不建議將一個c++的函式宣告或定義在另一個函式體中。

函式宣告和函式定義的關係是什麼,C 中,函式的宣告與函式的定義有什麼區別?

函式先宣告才可以被呼叫,如同變數先宣告後使用。函式的宣告也可以和函式定義分開。一個函式只可以定義一次,但是可以宣告多次。函式定義 是指對函式功能的確立,包括指定函式名,函式值型別 形參型別 函式體等,它是一個完整的 獨立的函式單位。而 函式宣告 的作用則是把函式的名字 函式型別以及形參型別 個數和順...

c 函式怎麼呼叫另函式中的引數

如來果另一個函式中的引數源是該函式bai的動態區域性變數,那是du不可能的,除非想zhi點其他辦法,比dao如說跟蹤該區域性變數生成的地址,並且在該區域性變數的生存期內呼叫。但是這樣我不知道有什麼意義。如果另一個函式中的引數的變數是函式的區域性靜態變數static,那麼也可以,不過得想點辦法。那就是...

在c中用陣列指標和什麼作為函式引數能夠

除了引用可以將引數值帶回外其餘的 陣列,指標等 都沒有這種能力 如果原題確實是這麼出的,那隻能說明出題者是c 半吊子.引用,三者的本質都是指標 還有 引用 和全域性變數 地址,三者的本質都是地址 c 中如何把陣列作為引數 對於陣列 名作為參bai數傳遞,有兩種方du式zhi 1.使用陣列名本身,如以...