用typedef宣告新型別名

2021-09-23 17:14:53 字數 1467 閱讀 3589

有時,,發現敲打碼時真的好麻煩,短的**還好說,就像可愛的int,但是遇到像long long有時還會來乙個unsigned long long 型,寫的人暈頭轉向,那麼有什麼好的辦法把它們都變可愛嗎?那一定是我們親愛的——typedef,這位魔法師來幫助我們。

typedef 作用:給已有的資料型別定義新型別名。

目的:1.簡單。

2.名稱和處理問題相關。

typedef

unsigned

long

long uint64;

typedef

int* pint;

typedef

unsigned

int time_t;

uint64 a =10;

//簡短的型別

uint64 b =20;

time_t t1;

//和時間相關的問題

t1 =

time

(null);

//獲取時間值

我們在輸入型別時也會覺得太長太麻煩,typedef 也可以幫我們將複雜的型別變為簡單的型別

命名乙個簡單的型別名代替複雜的型別表示方法

(1)命名乙個新的型別名代表結構體型別:

typedef

struct date

date;

date birthday;

date *p;

(2)命名乙個新的型別名錶陣列型別

typedef

int arr[10]

;arr a;

(3)命名乙個新的型別名代表乙個指標型別

typedef

char

*string;

string p,s[10]

;

(4)命名乙個新的型別名代表指向函式的指標型別

typedef

int(

*pointer)()

;pointer p1,p2;

歸納起來,宣告乙個新的型別名的方法是

如果沒有typedef,那麼

int arr[10];//乙個10個長度的整型陣列變數

加上typedef int arr[10];//arr提公升為整型陣列資料型別

用來定義變數:arr a;

相當於定義了:arr a[10];說明

(1)用typedef只是對已經存在的型別指定乙個新的型別名,並沒有創作新的型別

(2)用typedef宣告陣列型別、指標型別、結構體型別、共用體型別、列舉型別等,使得程式設計更加方便。

(3)typedef與#define表面上有相似之處

(4)使用typedef名稱有利於程式的通用與移植。有時程式會依賴於硬體特性,用typedef型別就便於移植。

C 宣告新型別 typedef

在c 中,除了可以宣告結構體 共用體 列舉等型別外,還可以用typedef宣告乙個新的型別名來代替已有的型別如 typedef int integer 指定用識別符號integer代表int型別 typedef float real 指定用real代表float型別 這樣,以下兩行等價 int i,...

typedef 向前宣告 用typedef宣告型別

定義 可以用typedef宣告乙個新的型別名來代替已有的型別名。用法 typedef int integer 指定用識別符號integer代表int型別 typedef float real 指定用識別符號代表float型別 然後integer a real b 與語句int a float b 是...

2 用typedef為型別重新命名

1 為了簡化名字,方便閱讀,尤其是指標的閱讀 2 有利於程式的通用和移植,如在不同計算機系統中int型所佔位元組數不一樣,如在乙個系統中int是兩個位元組,但是到了另外乙個系統是4個位元組,但是我們只需要typedef int integer,則修改int為long就可以了。1 按照定義變數的方法寫...