前言:
typeof關鍵字是c語言中的乙個新擴充套件,這個特性在linux核心中應用非常廣泛。(其實這和c++的auto關鍵字和可以推斷decltype關鍵字相當類似)
1,把y定義成x指向的資料型別:
typeof(*x) y;
2,把y定義成x指向資料型別的陣列:
typeof(*x) y[4];
3,把y定義成乙個字元指標陣列:
typeof(typeof(char *)[4] y;
這與下面的定義等價:
char *y[4];
4,typeof(int *) p1,p2; /* declares two int pointers p1, p2 */
int *p1, *p2;
5,typeof(int) *p3,p4;/* declares int pointer p3 and int p4 */
int *p3, p4;
6,typeof(int [10]) a1, a2;/* declares two arrays of integers */
int a1[10], a2[10];
typeof構造中的型別名不能包含儲存類說明符,如extern或static。不過允許包含型別限定符,如const或volatile。 例如,下列**是無效的,因為它在typeof構造中宣告了extern:
typeof(extern int) a;
1,
2,
typeof關鍵字簡介
typeof關鍵字是c語言中的乙個新擴充套件。只要可以接受typedef名稱,sun studio c 編譯器就可以接受帶有typeof的結構,包括以下語法類別 宣告函式宣告符中的引數型別鍊錶和返回型別 型別定義 型別操作符s sizeof操作符 復合文字 typeof實參 編譯器接受帶雙下劃線的關...
typeof關鍵字簡介 rtti
typeof 關鍵字是c語言中的乙個新擴充套件。只要可以接受typedef 名稱,sun studio c 編譯器就可以接受帶有typeof 的結構,包括以下語法類別 編譯器接受帶雙下劃線的關鍵字 typeof 和 typeof 本文中的例子並沒有遵循使用雙下劃線的慣例。從語句構成上看,typeof...
C語言的typeof關鍵字
c語言中typeof關鍵字,是c語言中的乙個新擴充套件。typeof的引數可以是兩種形式 表示式或型別。下面這兩個等效宣告,用於宣告int類的變數a typeof int a typeof b a 相當於獲取 b 的型別,定義乙個變數a gcc中這個表示式的型別是int 自動提公升為int 注意ty...