日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

typedef常見用法(轉(zhuǎn))

 take_care 2012-05-23

typedef常見用法(轉(zhuǎn))

typedef常見用法

1.常規(guī)變量類型定義
例如:typedef unsigned char uchar
描述:uchar等價于unsigned char類型定義
uchar c聲明等于unsigned char c聲明

2.數(shù)組類型定義
例如: typedef int array[2];
描述: array等價于 int [2]定義;
array a聲明等價于int a[2]聲明

擴展: typedef int array[M][N];
描述: array等價于 int [M][N]定義;
array a聲明等價于int a[M][N]聲明

3.指針類型定義
例如: typedef int *pointer;
描述: pointer等價于 int *定義;
pointer p聲明等價于int *a聲明

例如: typedef int *pointer[M];
描述: pointer等價于 int *[M]定義;
pointer p聲明等價于int *a[M]聲明明

4.函數(shù)地址說明
描述:C把函數(shù)名字當做函數(shù)的首地址來對待,我們可以使用最簡單的方法得到函數(shù)地址
例如: 函數(shù):int func(void);
unsigned long funcAddr=(unsigned long)func;
funcAddr的值是func函數(shù)的首地址

5.函數(shù)聲明
例如: typedef int func(void);
func等價于 int (void)類型函數(shù)
描述1: func f聲明等價于 int f(void)聲明,用于文件的函數(shù)聲明
描述2: func *pf聲明等價于 int (*pf)(void)聲明,用于函數(shù)指針的生命,見下一條


6.函數(shù)指針
例如: typedef int (*func)(void)
描述: func等價于int (*)(void)類型
func pf等價于int (*pf)(void)聲明,pf是一個函數(shù)指針變量

7.識別typedef的方法:
a).第一步。使用已知的類型定義替代typdef后面的名稱,直到只剩下一個名字不識別為正確
如typedef u32 (*func)(u8);
從上面的定義中找到 typedef __u32 u32;typedef __u8 u8
繼續(xù)找到 typedef unsigned int __u32;typedef unsigned char __u8;
替代位置名稱 typedef unsigned int (*func)(void);
現(xiàn)在只有func屬于未知
b).第二步.未知名字為定義類型,類型為取出名稱和typedef的所有部分,如上為
func等價于unsigned unsigned int (*)(unsigned char);
c).第三部.定義一個變量時,變量類型等價于把變量替代未知名字的位置所得到的類型
func f等價于unsigned unsigned int (*f)(unsigned char)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多