A. c語言一般在什麼情況下不需要返回值
所有的函數,除了空值類型外,都返回一個數值(切記,空值是ANSI建議標准所做的擴展,也許並不適合讀者手頭的C編譯程序)。該數值由返回語句確定。無返回語句時,返回值是0。這就意味著,只要函數沒有被說明為空值,它就可以用在任何有效的C語言表達式中作
為操作數。這樣下面的表達式都是合法的C語言表達式。
x
=
power
(y);
if
(max
(x,y)
>100)
printf("greater;")
for
(ch=getchar(
);
isdigit
(ch);)
.
.
.
;
可是,函數不能作為賦值對象,下列語句是錯誤的:
s
w
a
p
(
x
,y)
=100;
C編譯程序將認為這個語句是錯誤的,而且對含有這種錯誤語句的程序不予編譯。
所有非空值的函數都會返回一個值。我們編寫的程序中大部分函數屬於三種類型。第一種類型是簡單計算型—函數設計成對變數進行運算,並且返回計算值。計算型函數實際上是一個「純」函數,例如sqr(
)和sin(
)。第二類函數處理信息,並且返回一個值,僅以此表示
處理的成功或失敗。例如write(
),用於向磁碟文件寫信息。如果寫操作成功了,
write(
)返回寫入的位元組數,當函數返回-
1時,標志寫操作失敗。最後一類函數沒有明確的返回值。實際上這類函數是嚴格的過程型函數,不產生值。如果讀者用的是符合A
N
S
I建議標準的C編譯程序,那麼所有這一類函數應當被說明為空值類型。奇怪的是,那些並不產生令人感興趣的結果的函數卻無論如何也要返回某些東西。例如printf(
)返回被寫字元的個數。然而,很難找出一個真正檢查這個返回值的程序。因此,雖然除了空值函數以外的所有函數都返回一個值,我們卻不必非得去使用這個返回值。有關函數返回值的一個常見問題是:既然這個值是被返回的,我是不是必須把它賦給某個變數?回答是:不必。如果沒有用它賦值,那它就被丟棄了。
B. 一般的C語言程序在什麼情況下需要寫返回值,什麼情況下不需要寫呢
最開始必須聲明下,大部分情況下都是要有返回值的,特別是你以後工作了寫的一些程序。不過,也有少部分情況下是不需要返回值的,那就是你不太關心這個函數的具體運行情況,或者這個函數本身很簡單,出錯的幾率太小了,又或者是初學者在練習的時候。比如部分close()類型的函數通常返回值都為void,比如show()這類的函數通常只是顯示內容的,也通常沒有返回值。
C. C語言中,自定義函數什麼時候不用返回值
C語言中,每個函數都有返回值類型。可以是void,int,double,等,也可以是struct類型。在返回值是void類型的函數中,return一般在最後一行,後面不加任何值
D. c語言沒有返回值什麼意思,通俗說.
很正常啊,沒有返回值,就是不需要返回值。
比如:定義一個函數,在函數中列印信息到屏幕上。
voiddisplayMessage(char*msg){
#ifdefNEED_DEBUG
printf("%s ",msg);
#endif
}
很顯然,調用這個函數,我不需要知道信息是不是已經列印到屏幕上了。(只有調試程序,才需要顯示信息)
有很多類似的場景,比如:某個程序,根據給定的參數,在屏幕上繪制完成一個圖像,而調用者不關心圖像是不是繪得正確,因為正確與否不影響程序的繼續執行。
E. C語言函數何時無返回值
當你的函數不需要返回值時,你就可以用void定義函數為無返回值類型,如下面的函數只是輸出一條語句,則不需要返回值:
void
fun()
{cout<<"大家好";}
但是,像有的需要返回一個值,如計算兩個數的和的函數,則需要返回值,返回它們的和:
int
fun(int
a,int
b)
{return
a+b;}
總之,是根據你自己的需要來設定的。
希望被採納。