Ojective-C学习笔记(2)

在上篇随笔中我用Xcode创建了一个OC项目。这次我要重新建一个项目,并添加一些代码来体验OC语法的魅力。

首先来学习一下OC中的布尔类型(BOOL),它有两个值 YES 和 NO ,实际上是一种带符号的字符类型。

来写一个函数判断两个整数是否相等。

#import <Foundation/Foundation.h>

BOOL areIntsSame(int a, int b){
    if (a == b){
        return YES;
    } else {
        return NO;
    }
}

NSString *boolString(BOOL yesOrNo){
    if (yesOrNo == YES){
        return @"YES";
    } else {
        return @"NO";
    }
}

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        NSLog(@"Hello, World!");
        NSLog(@"%@", boolString(areIntsSame(5, 5)));
        NSLog(@"%@", boolString(areIntsSame(5, 4)));
    }
    return 0;
}

运行结果如下:

2018-04-21 12:41:34.579478+0800 HelloWorld[3699:583943] Hello, World!
2018-04-21 12:41:34.579731+0800 HelloWorld[3699:583943] YES
2018-04-21 12:41:34.579750+0800 HelloWorld[3699:583943] NO

来分析一下上面的代码,第一个函数比较两个整数是否一样,第二个函数将 BOOL 值转成字符串。输入结果表示5和5是一样的,5和4是不一样的。
在字符串前面都有一个@符号,去掉它Xcode会提示“String literal must be prefixed by '@'” 信息,还是老老实实把它加上。

posted @ 2018-04-21 12:48  陈道长  阅读(508)  评论(0编辑  收藏  举报