Objective - C基础: 第一天 - 3.BOOL基本认识

前面我们讲解了OC与C的多文件编译, 这次我们来讲解一下BOOL,BOOL类型只有在OC上才有, C语言是没有的, 那么什么是BOOL呢? 下面让我们一起来看看~~


例子:

#import <Foundation/Foundation.h>

int main()
{
    BOOL a1 = YES;
    
    BOOL a2 = NO;

    BOOL a3 = 1;
    
    BOOL a4 = 0;
    
    NSLog(@"a1 = %d    a2 = %d", a1, a2);
    NSLog(@"a3 = %d    a4 = %d", a3, a4);

    return 0;
}

输出的结果:



其实BOOL类型的值只是01,  1YES,0NO, 那么BOOL的本质又是怎么存储的呢?? 让我们来继续看看~


typedef signed char BOOL;

#define YES (BOOL)1
#define NO (BOOL)0


其实BOOLchar类型, 而括号里面的BOOL, 是强行转换, 把YES强行转换为1, 把NO强行转换为0, 但是BOOL的值是当作整型来输出, 所有必须得用%d或者 %i

posted @   背着吉他去流浪  阅读(170)  评论(0编辑  收藏  举报
编辑推荐:
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
阅读排行:
· C# 13 中的新增功能实操
· Vue3封装支持Base64导出的电子签名组件
· 万字长文详解Text-to-SQL
· Ollama本地部署大模型总结
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(4)
点击右上角即可分享
微信分享提示