關於C 函式返回值的問題,C 函式返回值問題

2021-03-27 10:11:05 字數 5692 閱讀 5575

1樓:匿名使用者

#include

class test

{public:

test(int x=0):i(x)

{cout<<"新建的該物件的地址為:"<~test(){cout<<"析構地址為:"<,正確輸出,不過你的**確實認人匪姨所思

2樓:匿名使用者

與實參的問題

以一個簡單的程式為例來說明

void mswapa(int a,int b);//這 兩個函式都是交換a,b的值

void mswapb(int&a,int&b);

int main(){

int a=2;

int b=3;

mswapa(a,b);

cout <換的

msapb(int&a,int&b)用了引用,它直接對你在main()中定義的int a,b這兩個變數的值進行交換,所以cout<

c++函式返回值問題

3樓:匿名使用者

(1)函式的返回值是通過函式中的return語句獲得的。return語句將被呼叫函式中的一個確定值帶回主調函式中去。

如果需要從被呼叫函式帶回一個函式值(供主調函式使用),被呼叫函式必須包含return語句。如果不需要從被呼叫函式帶回函式值,則可以不要return語句。

一個函式中可以有一個以上的return語句,執行到哪一個return語句,哪一個語句起作用。

return語句後面的括號可以要,也可以不要,如「return z;」與「return (z);」等價。return後面的值可以是一個表示式。例如:

int max(int x,int y)

如果在主調函式中呼叫它,比如:

a=max(1,2)

那麼函式max的return語句後面表示式的值就是2,也就是說max(1,2)=2,所以a=2

(2)函式值的型別。既然函式有返回值,這個值當然應屬於某一個確定的型別,應當在定義函式是指定函式值的型別。例如下面是幾個函式的部首:

int max(float x,float y);//函式值為整型

char letter(char c1,char c2);//函式值為字元型

double min(int x,int y);//函式值為雙精度型

void change(int a);//函式值為空

(3)如果函式值的型別和return語句中表示式的值不一致,則以函式型別為準,即函式型別決定返回值的型別。對數值型資料,可以自動進行型別轉換。特別提一提void型別,如果一個函式的型別為void,那麼,即使函式中有return語句且return語句中表示式的值不為空,返回值仍為空,嚴格滿足函式型別決定返回值的型別。

4樓:97樂於助人

因為主函式裡面呼叫了grade函式,而grade函式裡面有輸出語句,所以會有書上的結果。

並不是返回給了主函式值。

5樓:匿名使用者

.返回值是具體將值返回到定義函式時的行參上嗎?不是的,而是在函式的名稱前加上資料型別不過請注意:

返回值型別和所呼叫的引數的型別可以不一致....需要向樓主說明的一點是如何取得這個函式的返回值:我寫的比較多,不讓我發,說我重複字元太多了,你看我空間吧,答案在那裡,我不會刪的:

**.***/597872495/blog/1206627783希望我的回答對你有幫助:)

6樓:匿名使用者

void 不必要return

int 型別 一定要return

int max (int,int)

7樓:匿名使用者

void createwaybilllist(waybill *& head1,banci *& head2)

c++的函式返回值是什麼意思 通俗點講

8樓:會飛的小兔子

c++的函bai

數返回值是由於函式名變數du通常用來把函zhi數的處理結dao果資料返回給呼叫函版數,即遞迴呼叫,所權以一般把函式名變數稱為返回值,函式的返回值型別是在定義函式時指定的。

函式可以有返回值,也可以沒有返回值:

1、沒有返回值的函式:功能只是完成一個操作,應將返回值型別定義為void,函式體內可沒有return語句。

2、有返回值的函式:函式的最後會有一個返回值return,可以用來獲取該函式執行結果返回給該函式,讓外部呼叫該函。

擴充套件資料

返回值的原理

函式名變數通常用來把函式的處理結果資料帶回給呼叫函式,即遞迴呼叫,所以一般把這個函式名變數稱為返回值。就是處理結果,main函式裡的返回值是給作業系統的,返回0表示正常結束,返回負數便是不正常結束。

函式相當於人的行為,有的需要一個結果,有的不需要,比如,你叫你同學去拿一本書,返回結果便是那本書。

9樓:匿名使用者

返回值概念:一個函式的

函式名既是該函式的代表,也是一個變數。由於函式名變數通常用內來把函式容的處理結果資料帶回給呼叫函式,即遞迴呼叫,所以一般把函式名變數稱為返回值。

通俗點來說就是函式執行完畢後得到的結果。返回值的型別可以有很多 void、bool 、int 、以及自定義的型別等等,返回值還和編譯環境有關,有些環境的bool型使用boolean表示的,需要注意不要搞混了

當然了函式可以有返回值,也可以沒有返回值。對於沒有返回值的函式,功能只是完成一個操作,應將返回值型別定義為void,函式體內可以沒有return語句,當需要在程式指定位置退出時,也可以在該處放置一個return;

10樓:聽雨樓之鐵血

樓主不知道那

bai個要不要解釋下實

du參和形參的概念zhi啊?dao恩,就是說,你回給函式的值,就只是把答變數的值給了形參,而地址沒有傳遞給它,就是說,如果沒有返回值的話,你在函式中修改過的值,是無法傳遞到實參上去的。我舉個例子吧:

void plus (int a ,int b)int main()

這個void 就是不要返回值的意思。那麼這個例子的意思就是a+b=c對吧,但是主函式中你呼叫這個函式的話,c的值是不會改變的,還是等於4.就是說,有了返回值,return c;後,c的值就是等於3了,樓主這樣感覺能理解嗎?

11樓:匿名使用者

比如1個函式是計算1+1=幾的,但是計算出來了是等於2,只有此函式知道,別人不知道啊。

用另外1個函式呼叫你,然後你被呼叫就返回2就可以。

12樓:匿名使用者

為什麼要返回

?bai

不是所有du的函式都需要返回值zhi的,這個得看你調dao用函式的目的專是什麼,如果你需

屬要通過一段**實現計算某一個結果,並且這個結果在後面的程式中會使用到,那麼你就需要讓這個函式返回一個值,你便你在後面的程式中利用。

函式的返回點是呼叫點

返回給誰?這個就看你用什麼來接收了,可以是變數,可以是函式。函式執行完成後,會回到函式的入口處。

如果有返回值,那麼返回給你用來接收結果的那個變數,要是沒有返回值的話,就不返回給任何東西,比如是引用或指標類的,直接對實參的地址進行操作的函式

13樓:匿名使用者

比如copy

int add(int a,int b)

這個bai函式用來計算a,b的和,當然要du返回a+b的值

zhi你可以這樣呼叫:

int c=add(3,4);

這個函式就會把數字dao7返回給c

14樓:匿名使用者

打個比方,你讓一個人去做事,然後他做了,但是你不知道他做了沒?有沒完成?完成的怎麼樣?這時他必須通知你一下,這就是返回值。

15樓:匿名使用者

通常返回值的話,會被下一個函式使用到

16樓:中國多金男

先計算return後這個函式返copy回bai值的值 再把計算的值返回給先前du的函式zhi

如int add(int x,int y)

先計算 sub (3,4) 得出int 值 7,再把7作為返回值返回給add函式

17樓:匿名使用者

返回給呼叫者

簡單點說:程式就是接收輸入提供輸出

c++函式返回值問題怎麼寫?

18樓:手機使用者

(1)函式的返回值是通過函式中的return語句獲得的。return語句將被呼叫函式中的一個確定值帶回主調函式中去。

如果需要從被呼叫函式帶回一個函式值(供主調函式使用),被呼叫函式必須包含return語句。如果不需要從被呼叫函式帶回函式值,則可以不要return語句。

一個函式中可以有一個以上的return語句,執行到哪一個return語句,哪一個語句起作用。

return語句後面的括號可以要,也可以不要,如「return z;」與「return (z);」等價。return後面的值可以是一個表示式。例如:

int max(int x,int y)

如果在主調函式中呼叫它,比如:

a=max(1,2)

那麼函式max的return語句後面表示式的值就是2,也就是說max(1,2)=2,所以a=2

(2)函式值的型別。既然函式有返回值,這個值當然應屬於某一個確定的型別,應當在定義函式是指定函式值的型別。例如下面是幾個函式的部首:

int max(float x,float y);//函式值為整型

char letter(char c1,char c2);//函式值為字元型

double min(int x,int y);//函式值為雙精度型

void change(int a);//函式值為空

(3)如果函式值的型別和return語句中表示式的值不一致,則以函式型別為準,即函式型別決定返回值的型別。對數值型資料,可以自動進行型別轉換。特別提一提void型別,如果一個函式的型別為void,那麼,即使函式中有return語句且return語句中表示式的值不為空,返回值仍為空,嚴格滿足函式型別決定返回值的型別。

c++問題,呼叫有返回值和沒有返回值的函式,為什麼不同呢?

19樓:匿名使用者

#include

void show()

int main()

{std::cout<嗎?std::cout<的是show()執行之後返回的值,函式show()執行之後沒有返回任何版值,因此能權顯示什麼?

20樓:匿名使用者

一個函式

的函式名既是該函式的代表,也是一個變數。由於函式名變數通常用來把函式的處理結內果資料帶回給

容呼叫函式,即遞迴呼叫,所以一般把函式名變數稱為返回值。

函式可以有返回值,也可以沒有返回值。對於沒有返回值的函式,功能只是完成一個操作,而不能返回運算的結果。對於沒有返回值的函式,功能不僅是完成一個操作,還能返回運算的結果,功能更加強大。

例如:void funcplus(int a,int b)

int funcplusret(int a,int b)

如上所示:funcplus只完成了 a+b的運算,結果沒有返回,所以我們得不到計算的結果。

funcplusret,完成了a+b的運算,並且返回了結果,我們可以獲得結果。

c如何函式返回值,c如何函式返回值

返回值是右值 只能在等號右邊 可以用一個變數來接受收 函式也可以通過引用和指標來改變外部變數的值 c 中的返回值指的是什麼?首先,c語言中的函式有兩種形式 1 有返回值,2 無返回值。有返回值的函式會把內執行的結果 容也就是你寫這個函式的目的 返回到主函式中。沒有返回值的函式主要是為了完成某種任務 ...

C語言access函式返回值問題

你語句寫錯bai了,應該是du if access const char filepath,int mode 沒有分號 else 檔案不存在 zhi,返回 1,整個表示式是真,執行if體裡的dao語句.我不回知道你access函式怎麼實現的,但你答應該這樣 define file not exist...

c語言中函式返回型別和函式返回值

函式的返回值bai 通過return語句來執du行,即zhireturn後的變數或表示式的值dao 就為專該函式的返回值 你可以根屬據需要自定義返回什麼值 而返回值的型別是指該值你想要得到的型別,比如return a a的型別,你在函式體裡定義的是int a 但根據需要,你要的是一個float型的返...