5.2節中,我們使用#define指令建立了一個宏,可以用來定義布爾型資料:
#define bool int
但是,一個更好的設定布爾類型的方法是利用所謂的類型定義的特性:
typedef int bool;
注意,所定義的類型的名字放在最後。還要注意,我們使用首字母大寫的單詞bool。将類型名的首字母大寫不是必須的,隻是一些程式員的習慣。
采用typedef定義bool會導緻編譯器在它所識别的類型名清單中加入bool。現在,bool類型可以和内置的類型名一樣用于變量聲明、強制類型轉換表達式和其他地方了。例如,可以使用bool聲明變量: bool flag; /*same as int flag;*/
編譯器将會把bool類型看成是int 類型的同義詞,是以,變量flag實際就是一個普通的int類型變量。
typedef int bool 就是定義了一個新名字的類型 , bool和 int具有一樣的含義 int flag == bool flag