C 入門學習八 函式與函式指標

2021-10-07 10:07:37 字數 1821 閱讀 4645

函式分類:

內建函式(stl和boost c++)

自定義函式 

函式三要素:

返回值型別、函式名、引數列表

引數和按值傳遞

按值傳遞:給函式傳遞變元(引數時),變元(引數)值不會直接傳遞給函式,而是先製作變元(引數)值的副本,在儲存在棧尚,在使用這個副本可用於函式,而不是使用初始值。

void change(int num)

int main()

}int main()

//函式定義

void input(int *values, int len)

}int main()

使用二維陣列作為函式的引數:

void show(double(*arr)[5], int len)

cout << endl;

}int main()

show(power, 3);

}

函式指標:

函式的位址是儲存其機器語言**的記憶體開始位址

好處:可以在不同的時間使用不同的函式

函式指標的宣告:

函式原型: double sum(double,double);

函式指標宣告:double (*ptrsum)(double,double);  宣告了乙個指標ptrsum,指向乙個函式;

double * ptrsum(double,double)宣告了乙個函式ptesum,返回double* 型別,而不是函式指標。

//使用函式指標實現加減乘除運算

/** 加法*/

double addition(double, double);

double addition(double num1, double num2)

/**列印計算結果*/

void print_result(double(*)(double, double), double, double);

void print_result(double(*ptrcalc)(double, double), double num1, double num2)

int main()

double (*ptrcalc)(double,double); //函式指標陣列
另外一種定義方法

//使用函式指標實現加減乘除運算

/** 加法*/

double addition(double, double);

double addition(double num1, double num2)

/**列印計算結果*/

void print_result(double(*)(double, double), double, double);

void print_result(double(*ptrcalc)(double, double), double num1, double num2)

int main()

C 學習筆記 函式指標與指標函式

函式指標 指向函式的指標,首先它是指標變數 同指向乙個整形變數 字元 陣列一樣 其次它指向乙個函式 位址 宣告 函式型別 指標變數名 形參列表 函式型別,指明函式的返回型別,由於 優先順序高於 所以指標變數名外的括號不能少,後面形參列表表示指標變數指向的函式所帶的引數列表。上面相當於用函式指標p,代...

C 函式指標與指標函式

函式指標 函式名本身代表著函式的位址,因此給函數指標賦值使可以不用加 符號 加也可以!void func int 定義乙個函式 void pf int 定義乙個函式指標 pf func 給函式指標賦值 int f x,y 其中x,y是形式引數,f是函式名,呼叫後返回乙個指向整型資料的位址指標。f x...

C 函式指標與指標函式

c 要是不常用,相信過四天你的指標函式與函式指標的概念就該忘個精光。其實只要記住誰在後面誰就是哪個本質。先了解下指標陣列與陣列指標吧 陣列指標 就是指向陣列的指標,它表示的是乙個指標,它指向的是乙個陣列,它的重點是指標,如,int pa 8 宣告了乙個指標,該指標指向了乙個有8個int型元素的陣列 ...