为了账号安全,请及时绑定邮箱和手机立即绑定

我看很多框架里的方法都用 BOOL 为什么?

我看很多框架里的方法都用 BOOL 为什么?

iOS
catspeake 2023-04-17 22:18:22
boolean_t t;Boolean tt;BOOL ttt;bool tttt;这四种布尔类型有什么区别?
查看完整描述

3 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

typedef signed char BOOL;
// BOOL is explicitly signed so @encode(BOOL) == "c" rather than "C"
// even if -funsigned-char is used.

  • define OBJC_BOOL_DEFINED

  • define YES (BOOL)1

  • define NO (BOOL)0


查看完整回答
反对 回复 2023-04-21
?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

bool 是int
BOOL 是char

bool b1 当b1>0 就=YES
BOOL b2 当b2=1 才=YES

所以框架都用BOOL

Boolean mac os上有历史意义的类型

Boolean types and values
    
        Boolean         Mac OS historic type, sizeof(Boolean)==1
        bool            Defined in stdbool.h, ISO C/C++ standard type
        false           Now defined in stdbool.h        true            Now defined in stdbool.h

boolean_t i386

/*
 *	File:	boolean.h
 *
 *	Boolean type, for I386.
 */#ifndef	_MACH_I386_BOOLEAN_H_#define _MACH_I386_BOOLEAN_H_#if defined(__x86_64__) && !defined(KERNEL)typedef unsigned int	boolean_t;#elsetypedef int		boolean_t;#endif#endif	/* _MACH_I386_BOOLEAN_H_ */


查看完整回答
反对 回复 2023-04-21
?
holdtom

TA贡献1805条经验 获得超10个赞

boolean_t t1 = 1;//int type
Boolean t2 = 1; //unsigned char type
BOOL t3 = 4;//YES or NO
bool t4 = 1;//true or false

NSAssert(t1, @"boolean_t t1 is NO");//通过测试
NSAssert(t2, @"boolean_t t2 is NO");//通过测试
NSAssert(t3, @"boolean_t t3 is NO");//通过测试
NSAssert(t4, @"boolean_t t4 is NO");//通过测试

//img1.sycdn.imooc.com//644211be00016e2c04440192.jpg

查看完整回答
反对 回复 2023-04-21
  • 3 回答
  • 0 关注
  • 164 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信