1、通過使用指針,在函數(shù)調(diào)用時(shí),傳遞帶有地址的參數(shù),并使用指針更改其值;這樣,修改后的值就會(huì)變成原始參數(shù)。
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、網(wǎng)站建設(shè)、朝陽網(wǎng)絡(luò)推廣、小程序制作、朝陽網(wǎng)絡(luò)營銷、朝陽企業(yè)策劃、朝陽品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供朝陽建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
2、通過使用指針返回結(jié)果為:
3、通過使用結(jié)構(gòu):因?yàn)榻Y(jié)構(gòu)是用戶定義的數(shù)據(jù)類型;可以定義一個(gè)包含兩個(gè)整數(shù)變量的結(jié)構(gòu),并將更大和更小的值存儲(chǔ)到這些變量中,然后使用該結(jié)構(gòu)的值。
4、通過使用結(jié)構(gòu)返回結(jié)果為:
5、通過使用數(shù)組,當(dāng)一個(gè)數(shù)組作為參數(shù)傳遞時(shí),基地址將傳遞給該函數(shù),因此無論對(duì)數(shù)組副本所做的任何更改,都會(huì)更改為原始數(shù)組。
6、通過使用數(shù)組返回結(jié)果為:
函數(shù)是不能直接返回兩個(gè)值的,不過可以通過數(shù)組,列表,鏈表等方式,返回多個(gè)值。
例如 int a[] f(),這個(gè)shu函數(shù)返回值就是一個(gè)整型的數(shù)組,如果你要返回兩個(gè)值,可以定義數(shù)組長度為2,a[0]保存第一個(gè)值,a[1]保存第二個(gè)值。
int fun(int a, int b, int *c, int *d);
參數(shù)是a,b,返回值是c,d,c和d用指針傳進(jìn)去。
c,d可以是其他參數(shù)類型,也可以是數(shù)據(jù)結(jié)構(gòu)。
函數(shù)返回值可以用于返回error。
擴(kuò)展資料:
如果沒有返回值類型名為"void", 整數(shù)類型int 類型返回值為整數(shù)類型int,以此類推……
類型名有:void int long float int* long* float* ……
C++中函數(shù)的調(diào)用:函數(shù)必須聲明后才可以被調(diào)用。調(diào)用格式為:函數(shù)名(實(shí)參)
調(diào)用時(shí)函數(shù)名后的小括號(hào)中的實(shí)參必須和聲明函數(shù)時(shí)的函數(shù)括號(hào)中的形參個(gè)數(shù)相同。
有返回值的函數(shù)可以進(jìn)行計(jì)算,也可以做為右值進(jìn)行賦值。
參考資料來源:百度百科-函數(shù)
return后接一個(gè)值。
在調(diào)用這個(gè)函數(shù)的函數(shù)里面,調(diào)用它的時(shí)候希望獲得一個(gè)值,如果不希望獲得這個(gè)值的時(shí)候,用void聲明就好。如果需要,比如說需要得到一個(gè)整形值
就聲明
int func()
在調(diào)用它的比如main里面
func()的作用就可以相當(dāng)于一個(gè)int型常數(shù)
比如外面定義了
int max(int a,int b)
{
return ab?a:b;
}
主函數(shù)里面是
main()
{
int A;
A=max(1,2);
}
這時(shí)候就是通過max計(jì)算 12 則return 一個(gè)1 ,12 則return一個(gè)2。很明顯12 所以這里max(1,2)就會(huì)return 一個(gè) 2
這時(shí)候主函數(shù)里的max(1,2)就相當(dāng)于一個(gè)常數(shù) 2
A=max(1,2)的作用就相當(dāng)于A=2
這個(gè)意思。
獲取子函數(shù)的返回值/數(shù)組如下:
一、如果只有一個(gè)值要返回,那么用返回值
char * ptr。
int SIZE = 1024。
ptr = subFunc()。
int a=fun()。
int fun()。
fun(int a[], int size)。
if (null != (ptr_cmp = malloc(SIZE+1))。
memcpy(ptr_cmp, array_tmp, SIZE)。
二、數(shù)組是用循環(huán)達(dá)到依次賦值的目的
char * subFunc()。
*ptr_cmp = '\0'。
return ptr_cmp。
char * subFunc()。
char * ptr_tmp。
int ?array_tmp[1024] = {}。
void fun(int *a)。