Char或Int表示C中的布尔值?

tho*_*hom 15 c

我发现没有原生bool类型.人们要么使用int或者char- 虽然它似乎int比使用频率更高char?这是真的?

我的第一个冲动是使用,char因为它是一个较小的数据类型,但有一些我错过了?为int更好地为布尔值,如果是这样-为什么?

cni*_*tar 15

_BoolC99中有一个,bool如果包括,则有stdbool.h.

如果你没有它(一个相当现代的编译器),使用int它通常是最快的类型.使用的内存节省char可能微不足道.

  • @thomthom我实际上说的是`int`更快.它是最快的,因为它具有CPU自然字大小.这就是CPU所渴望的.见[这个很棒的答案](http://stackoverflow.com/a/5069643/226266). (3认同)