1樓:匿名使用者
如果函式有返回值,則需要返回語句return。return語句的一般形式是:
return(表示式);
執行時,先計算出括號中表示式的值,再將該值返回給主調函式中的呼叫表示式。下面對return語句做一些說明:
(1) 函式的返回值是通過函式中的 return 語句獲得的。return 語句將被呼叫函式中的一個確定值待會主調函式函式中去。
如果需要從被呼叫函式帶回一個函式值(供主調函式使用),被呼叫函式中必須包含 return 語句。如果不需要從被呼叫函式帶回函式值可以不要 return 語句。
一個函式中可以有一個以上的 return 語句,執行到哪一個 return 語句,哪一個語句起作用。
return 語句後面的括弧也可以不要,如
return t;
它與“return(t);”等價。
return 後面的值可以是一個表示式。例如,
int max(int x,int y)
這樣的函式體更為簡短,只用一個 return 語句就把求值和返回都解決了。
(2)返回值的型別。
在定義函式時對函式值說明的型別一般應和 return 語句中的表示式型別一致。
(3)如果函式值的型別和 return 語句中表示式的值不一致,則以函式型別為準。對數值型資料,可以自動進行型別轉換。即函式型別決定返回值的型別。
(4)如果被呼叫函式中沒有 return 語句,並不帶回一個確定的、使用者所希望得到的函式值,但實際上,函式並不是不帶回值,而只是不帶回有用的值,帶回的是一個不確定的值。
(5)為了明確表示“不帶回值”,可以用“void ”定義“無型別”(或稱“空型別”)。
2樓:
int main()
void main()
3樓:匿名使用者
void型別的函式沒有返回值
有返回值type的函式,是在函式執行完畢,返回一個type型別的值
c++獲得外部程式返回值的問題
c++函式返回值是什麼意思,幹什麼的?
4樓:匿名使用者
就是函式返回的值,返回值的型別取決於函式本身。
比如定義函式 fun
int fun()//就是返回int型別值bool fun()//就是返回bool值比如定義函式:
int aplusb(int a,int b)在主函式中呼叫時函式會返回a+b得值。
int main()
會輸出13。
5樓:97樂於助人
因為主函式裡面呼叫了grade函式,而grade函式裡面有輸出語句,所以會有書上的結果。
並不是返回給了主函式值。
c++的return返回值的問題。百度有高手嗎?這裡要寫什麼
6樓:哎呀
1、status的字面意義是狀態。一般來說,有有這樣的定義:
typedef int status;
什麼意思呢,就是status被定義為 int。也就是用不同數值的整數來表示不同的狀態。
編寫這行**的人的想法就是,要用整數這種資料,來表示“狀態”的不同。
以後你可能還會碰到很多的類似的東西,比如用bool來表示性別男女等等的定義。
2、所以,簡單的理解你這是一個返回int 也就是返回整數型別的一個普普通通的函式了,不用大驚小怪的。
3、從**的英文字面上分析,大體的意思就是初始化影象環境,取使用者的四種不同的輸入字元,然後對應於呼叫4個不同的另外的函式來進行初始化,並把初始化的結果以整數型別傳遞出來。
4、如果裡面的create??()的那些函式返回的本來就是整數的話,這段函式的**看起來不必改動什麼,是正確的。
7樓:匿名使用者
status應該是一個型別的別名,如 typedef int status;這樣status就是int型,它不是一個新的型別,只是int型的一個別名。當然也可能是其他型別的別名,你可以跟蹤查詢一下它的定義。
8樓:
mgraph
同時error的型別是什麼?
c++函式返回值問題怎麼寫?
9樓:手機使用者
(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 函式返回值的問題,C 函式返回值問題
include class test public test int x 0 i x cout 新建的該物件的地址為 test cout 析構地址為 正確輸出,不過你的 確實認人匪姨所思 與實參的問題 以一個簡單的程式為例來說明 void mswapa int a,int b 這 兩個函式都是交換a...
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...