都寫了如下3個函式,
請教:
1. 第一個函式屬于有函式原型,似乎沒疑問
2. 第二個函式屬于有函式原型還是沒有函式原型?
3. 第三個函式肯定屬于沒有函式原型,對吧?
4. 第一個函式和第二個和函式有啥區別?
一.
double f (double a)
{
return a*1;
}
二.
double f (a)
double a;
{
return a*1;
}
三.
double f (a)
{
return a*1;
}
uj5u.com熱心網友回復:
第二種沒怎么看打過這樣定義函式了,這個應該是比較老C語言標準版本支持的吧,現在的不清楚是否支持。第二種和第一種是一樣的吧,只是寫法不一樣而已。第三種,也不建議這樣寫,雖然沒有定義a的型別,編譯器會默認按照int處理。
不同的編譯器(新舊)可能編譯結果不一樣,有些可能編譯沒問題,有些會報錯。
但是和樓主要討論的似乎沒關系。三個函式都是函式定義。
uj5u.com熱心網友回復:
看在你讀書認真的面子上,建議首先更換資訊源/教材,然后學會辯證分析。uj5u.com熱心網友回復:
現代C語言和K&R C的關系,就像漢語普通話和北京腔的關系。您要全盤照搬啊?那以后...瞧好兒吧您內~
uj5u.com熱心網友回復:
大神,那我該看哪本書呢?推薦下?
uj5u.com熱心網友回復:
第一,我不是大神。第二,我的啟蒙教材也是K&R系語法,而且不是你這個這么經典。我只不過走過彎路在總結教訓。我后來觀念的改正是零零碎碎的,不是整體讀哪本書來的。所以沒法推薦教材。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/248225.html
標籤:C語言
