gpt4 book ai didi

ios - 2048 转换为 BOOL 返回 0

转载 作者:太空宇宙 更新时间:2023-11-04 07:17:17 24 4
gpt4 key购买 nike

考虑这段代码

NSInteger q = 2048;
BOOL boolQ = q;

NSLog(@"%hhd",boolQ);

执行后 boolQ 等于 0。有人可以解释为什么会这样吗?

最佳答案

BOOL 可能实现为 charuint8_t/int8_t,因为 "hh" 打印了一半整数的一半。这通常是一个字节。

转换为 char 是采用 2048 的最低 8 位 (=0x800) 并得到 0

将任何整数转换为 boolean 值的正确方法是:

NSInteger q = some-value;
BOOL b = !!q;

关于ios - 2048 转换为 BOOL 返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23631084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com