C 標準中實現定義的bool 大小
雖然C 語言標準明確規定了char、signed char 等基本類型的大小,並且unsigned char 每個為1 個位元組,sizeof(bool)的定義留給實現者
標準在§5.3.3/1中強調了這種歧義:
sizeof(char), sizeof(signed char) and sizeof(unsigned char) are 1; the result of sizeof applied to any other fundamental type is implementation-defined.
這意味著bool的大小不保證為1字節,並且標準包括註腳(69)明確指出:
sizeof(bool) is not required to be 1.
因此,實作可以根據各種因素決定bool 的大小,例如架構或平台限制。因此,sizeof(bool) 在不同的編譯器和系統中可能會有所不同。
以上是什麼決定了 C 中「bool」的大小?的詳細內容。更多資訊請關注PHP中文網其他相關文章!