第七章 C 的程式設計模組

2021-08-21 04:35:27 字數 1360 閱讀 8418

與資料項類似,函式也有位址,函式的位址是儲存其二進位制**的起始位置。假設我們設計乙個名為processarray()的函式,可以使用不同的方式來處理給定的陣列。要實現這種目標,processarray()函式的第二個引數設定為函式指標。要使用函式指標,為此必須完成下面的工作:

函式的位址就是函式名。

宣告指向函式的指標時,也必須指定指標指向的函式型別。這意味著宣告必須指定函式的返回值型別以及函式的特徵標。為提供正確的運算子優先順序,必須在宣告中使用括號將*pf括起來。不然,*pf(int)意味著pf是返回指標的函式,而(*pf)(int)意味著pf是乙個指向函式的指標。

double (*pf)(int);

double cube(int);

pf = cube;

(*pf)扮演的角色與函式名相同

double (*pf)(int);

double cube(int);

pf = cube;

(*pf)(5);

typedef

void (*p_fun)(int nums, int n);

void reverseorder(int nums, int n);

p_fun p;

下面是完整的例項:

#include 

using

namespace

std;

typedef

void (*p_fun)(int nums, int n);

void processarray(int nums, int n, p_fun p);

void reverseorder(int nums, int n); //逆序輸出函式中的元素

void positiveorder(int nums, int n); //正序輸出函式中的元素

int main()

; int n = 5;

processarray(nums, n, reverseorder);

processarray(nums, n, positiveorder);

return0;}

void processarray(int nums, int n, p_fun p)

void reverseorder(int nums, int n)

cout

cout

<}

程式設計思想第七章

過載 相同的返回值,相同的函式名稱,不同的引數列表。override註解是jdk1.5之後的產物,可以防止你在不想過載時而意外的進行過載 因為父類沒有這個過載方法,所以不能用這個註解 7.1復用 的三種方式 1,直接new關鍵字建立該類物件,組合 優點 快速方便 缺點 生成和銷毀物件,給效能帶來額外...

第七章程式設計作業

題目內容 完成乙個對候選人得票的統計程式。假設有3個候選人,名字分別為li,zhang和fun。使用結構體儲存每乙個候選人的名字和得票數。記錄每一張選票的得票人名,輸出每個候選人最終的得票數。結構體可以定義成如下的格式 struct person leader 3 輸入格式 第一行有乙個整數n,表示...

python第七章 python教程(第七章)

字典和集合 字典是python中唯一,乙個對映型別 如何建立乙個字典,如下 dict dict 滲透 網路安全 怎麼理解字典呢?現實生活中的字典可以通過首字母進行查詢要查詢的漢子,python也可以這樣理解,通過 前的元素查詢到冒號後的元素。為什麼說字典是唯一乙個對映型別呢?看圖。對映型別區別與序列...