任何人都可以解釋我在_Bool和Bool數據類型之間有什麼區別嗎? 例如C中_Bool和bool類型的區別?
_Bool x = 1;
bool y = true;
printf("%d", x);
printf("%d", y);
任何人都可以解釋我在_Bool和Bool數據類型之間有什麼區別嗎? 例如C中_Bool和bool類型的區別?
_Bool x = 1;
bool y = true;
printf("%d", x);
printf("%d", y);
在C99中加入這些數據類型的宏。由於bool
在C99之前未被保留,因此它們使用_Bool
關鍵字(保留)。
bool
如果包含stdbool.h
,則爲_Bool
的別名。基本上,包括stdbool.h
標題表示您的代碼是正確的,標識符bool
爲'保留',即您的代碼不會將其用於自己的目的(類似地,標識符爲true
和false
)。
+1包括歷史記錄。 – Lindydancer 2012-01-04 09:21:08
長期的意圖似乎是標準最終會被修改爲使bool成爲關鍵字。這是第1步,您可以使用
我不明白爲什麼這需要花二十年時間,因爲這是一個非常明顯的改進。不喜歡此更改的代碼仍可使用當前編譯器版本進行編譯。 – 2013-08-31 16:45:34
沒有區別。
bool
是在stdbool.h
中擴展爲_Bool
的宏。
而true
爲展開至1 stdbool.h
'bool'也必須是typedef,C沒有那種類型。 – 2012-01-04 09:11:47
類似於_Complex vs complex。 – 2014-09-17 10:58:42