c語言中什麼時候該用return什麼時候不用

時間 2021-10-14 23:44:45

1樓:

當你定義函式的時候才要用,有些函式有返回值,也就是呼叫一個函式之後,該函式返回一個值給你。

如 int fun(int a) 這個函式就要用return ,而且return 後面跟的變數或字面常量應該是整形才對,如果是不能自動轉換成整形的資料如double型的,系統就會報錯,但是如果return一個short型的變數,該變數會被自動轉化為int型變數。

總之,return後面跟的變數或者表示式結果的型別要與函式的型別一致。

現在知道為什麼 int main() 最後要 return 0;了吧(其實為什麼是0我也不知道,應該有什麼含義吧)

函式型別之中,有一個型別叫做空型別,也就是void

如void fun(int a)

這個函式裡面可以用return (後面不跟資料),也可以把return語句省略。這時函式呼叫到最後一個右大括號時結束。

一般用void的話就是沒有返回值和不需要返回值的了,如呼叫一個輸出函式,這個函式就沒必要返回了,事實上這個函式只管輸出就好了,也沒有什麼值要返回的,另一種是用指標傳址的時候,因為你傳的是地址,函式根據你的地址直接對資料進行操作了,這是就不需要返回值了。

因為對資料的操作在函式裡已經進行了(返回值的作用一般是賦值或者作為引數的賦值的話可以對變數直接操作,也就是用指標操作,也可以把返回值賦值給變數)

另外,return語句還有另一個功能就是結束函式呼叫,有時候,當某種情況發生的時候(或者說滿足一定情況的時候),必須結束程式,如當你申請動態空間失敗的時候,由於這是一個嚴重錯誤,所以必須強制終止程式,這時就可以用return語句來提前結束執行。

如 int *p=(int *)malloc(sizeof(int)*int)

if(p==null)

return;

不過要注意,return函式值是結束當前函式的呼叫,只有在主函式中return語句才具有結束程式的能力,在呼叫的函式中,只是結束你呼叫的函式罷了。

2樓:匿名使用者

void就是無返回值型別,這第一個程式定義的fun函式沒有返回值型別,所以你呼叫的時候不會有任何作用,定義的函式是想將兩個數對調一下,你可以在後面加一句printf("對調後的結果為%d%d",a,b);不見得非要用return,如果你想用return話,定義函式時前面應該有一個返回值型別,如int fun(int a,int b)則表明該函式返回的是個整型,第二個也是一樣,你呼叫函式fun的時候,函式中沒有任何操作。我給你舉個例子,你看你明白嗎。定義一個比較三個數大小,輸出一個較大的,int max(int x,int y,int z)

這個就要用return,因為要輸出一個較大的數,如果還不懂的話,可以hi我。

3樓:侯董董

有返回值的時候用

例如 定義函式時前面應該有一個返回值型別,如int fun(int a,int b)則表明該函式返回的是個整型,第二個也是一樣,你呼叫函式fun的時候,函式中沒有任何操作。

4樓:

當函式執行時,一定是在函式體中寫在的最後結尾位置的一個語句執行後,函式才結束,就可以不使用return

否則都必須使用return,這時一定需要使用if判斷是否出現需要結束的條件,在滿足條件時返回,例如:

if(x == 0 )return;

……當某個變數的內容為0時,函式結束,否則做其他的操作

5樓:

當函式有返回型別時,用 return.

6樓:匿名使用者

return是c++預定義的語句,它提供了種植函式執行的一種放大。當return語句提供了一個值

時,這個值就成為函式的返回值;例如,下面的函式是用來獲得三個數值的最大值,

int max(int x,int y,int z)

當return語句沒有提供一個數值時,可以看做是該函式的一箇中斷點。例如,下面的函式是獲得陣列array中的值等於val的序號;

void max(int array[10], int length ,int val, int* index)}}

c語言中什麼時候被呼叫函式要用return來得到返回值,什麼時候不用return就能得到返回值?

7樓:匿名使用者

一般引用一個需要一個返回值的函式時那個函式通常就用return返回所需要的值,還有一種情況就是函式接收的引數是陣列或某個指標(其本質都是地址),此時就是直接對主調函式中的資料進行操作,不需要返回值的

8樓:匿名使用者

當你寫的方法帶有返回值的時候就需要返回值了,當你寫的方法是void的話就不用寫return

9樓:匿名使用者

程式本身是靈活的,關鍵看你如何做

以下幫你列出幾種獲得函式中返回值的方法

1)使用return獲得

例如function()

main()

2)使用全域性變數獲得

int a;

function()

main()

3)傳地址

function(int *p)

main()

c語言程式設計時什麼時候用return0?

10樓:睦俊能蹇來

函式定義返回值是int型別的時候,

return

的值是int型別,當然包含0了,也可以返回其他int型數字

11樓:戚星睿霍智

一般分兩種情況:

1、帶返回值的main函式如果用return0;一般表示你的應用程式執行成功,如果返回非零值表示執行失敗。如:

intmain()

2、自己編寫的帶返回值的函式,可以用return0;不同的資料型別代表不同的意義,如:布林型return0表示假;int、long等就代表一個實際的數值了.

C語言中函式什麼時候宣告?什麼時候定義?最好舉例說明

函式可以在呼叫函式的函式 比如main函式 之前定義,這樣就無需宣告瞭 舉例 int add int x,int y 在編譯程式編譯到main的呼叫add之處時,由於已經編譯過add的函式了,因此編譯程式已經知曉呼叫規則,因此可以省略宣告語句 void main 如果函式在呼叫函式的函式之後定義,為...

c語言中為什麼,c語言中為什麼 0177777要轉換成原碼真值是 1。0123就不用轉換,真值是

整數有正整數和負整數,為了表示負數,一般用最高位來表示符號,因此,最高位是不能用來表示數值的。所以,一個16位的整數最大值為 2 15 32767 10 7fff 16 0111 1111 1111 1111 2 括號後面是進位制。也就是除去最高位,用來儲存數值的位數是總位數 1,也就是15位。而用...

c語言中charch什麼意思,c語言中char 是什麼意思

char ch ch getchar 意思是將變數ch定義為char字元型別,當鍵盤輸入一個字元的時候,將此值賦給變數ch。getchar 函式的作用是從計算機終端 一般為鍵盤 輸入一個字元。getchar 函式只能接收一個字元,其函式值就是從輸入裝置得到的字元。當程式呼叫getchar時,程式就等...