@import url(http://www.cnitblog.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
1.
BOOL typedef signed char BOOL;
YES #define YES (BOOL)1
NO #define NO (BOOL)0
BOOL 使用了一个8 位(一个字节)的整数进行表示,8 位全0 就是NO。
2^8 = 512
8960 用二进制表示是大于8 位的,也就是说高位无效,
只保留8960 的低八位,8960 的低八位恰好全都是0,因此8960 就是NO 了
因此在Objective-C中一定要注意这个问题,非零值未必是BOOL 的YES,但是0 一定是NO。
2.
bool c语言 int
Defined in stdbool.h, ISO C/C++ standard type
true 非0
false 0
3.
Boolean unsigned char type
Mac OS historic type, sizeof(Boolean)==1
4.
boolean_t int type
#ifndef _MACH_I386_BOOLEAN_H_
#define _MACH_I386_BOOLEAN_H_
#if defined(__x86_64__) && !defined(KERNEL)
typedef unsigned int boolean_t;
#else
typedef int boolean_t;
#endif
#endif /* _MACH_I386_BOOLEAN_H_ */