我目前正在練習 C 并學習指標和陣列。我觀看了一個教程,其中講師將功能從 更改int aFunction()為void aFunction()。當然,他沒有說為什么——這就是我在這里的原因。所以我想知道:何時以及為什么應該使用void作為函式的回傳型別。
uj5u.com熱心網友回復:
在 C 中,您必須告訴編譯器您宣告的變數的每種型別是什么。這就是為什么你有像int和這樣的東西char*。
函式的回傳值也不例外。編譯器必須知道每個函式的回傳型別是什么才能正常作業。現在,如果您有一個像add(int a, int b)通常那樣的函式,您希望其回傳型別為整數,這就是您將其定義為的原因
int add(int a, int b)
{
return a b;
}
現在考慮你有一個根本不回傳任何東西的函式,現在你需要告訴你的編譯器這個函式什么都不回傳。這就是為什么void使用。您void在函式執行某些操作但最終不需要向呼叫它的程式回傳任何值時使用。像這個:
void printAdd(int a, int b)
{
printf(“a b = %d”, a b);
}
我們在這里做了很多事情,但是添加的結果沒有回傳或存盤,而是列印到螢屏上。
您可以像這樣使用第一個函式add():
int abc = add(5, 7);
// abc is 12
而您只能使用第二個功能,例如
printAdd(5, 7);
// you cannot store the value because nothing is returned.
// 5 7 = 12 is printed to the screen
uj5u.com熱心網友回復:
函式宣告中函式名前面的標記是函式回傳值的型別。在這種情況下,只有一個標記,但型別名稱可能包含多個標記。當你想回傳一個整數物件時,你可以將回傳型別指定為int。當函式不回傳任何內容時,您使用void回傳型別。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/462805.html
下一篇:C陣列中的指標應用
