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型別。僅僅有第一句我們還無法使用這個指...