typedef的幾種使用方法

2021-07-25 10:58:25 字數 753 閱讀 7978

typedef是c語言的關鍵字,它的作用是是為一種資料型別定義乙個新名字,主要是助記和簡潔。

列一下三種用法:

(1)給void*型別定義了新名字,叫做point

typedef void* point;

那麼,point p;

就相當於

void* p;

(2)與結構體一起用,這相當於定義了結構體mystruct並且給它起了乙個別名叫mystruct

typedef struct mystructmystruct;

那麼,如果不起別名,則需要這樣定義:

struct mystruct ms;

現在可以這樣用了,使用別名mystruct:

mystruct ms;

(3)給複雜的型別起乙個別名,比如定義乙個叫callback_f的型別,它實際是接受乙個char*引數並返回int的函式指標:

typedef int (*callback_f)(char*);

這樣就能使用:

callback_f f;

來宣告乙個函式指標f,相當於:

int (*f)(char*);

記法很簡單,將要寫的函式指標名字換成新名字,並在前面加上typedef就行了,比如這裡直接將f換成別名callback_f再加typedef即可。

如此就可以繼續賦值並使用:

int fuc(char *c){

return 0;

f = &func;

好了,暫時先總結到這裡。

typedef函式指標使用方法

形式1 返回型別 函式名 參數列 char pfun int char glfun int a void main 第一行定義了乙個指標變數pfun。首先我們依據前面提到的 形式1 認識到它是乙個指向某種函式的指標,這樣的函式引數是乙個int型,返回值是char型別。僅僅有第一句我們還無法使用這個指...

typedef函式指標使用方法

形式1 返回型別 函式名 參數列 char pfun int char glfun int a void main 第一行定義了乙個指標變數pfun。首先我們依據前面提到的 形式1 認識到它是乙個指向某種函式的指標,這樣的函式引數是乙個int型,返回值是char型別。僅僅有第一句我們還無法使用這個指...

typedef函式指標使用方法

形式1 返回型別 函式名 參數列 char pfun int char glfun int a void main 第一行定義了乙個指標變數pfun。首先我們依據前面提到的 形式1 認識到它是乙個指向某種函式的指標,這樣的函式引數是乙個int型,返回值是char型別。僅僅有第一句我們還無法使用這個指...