Ojective-C学习笔记

Posted ccyag

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ojective-C学习笔记相关的知识,希望对你有一定的参考价值。

在上篇随笔中我用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 ‘@‘” 信息,还是老老实实把它加上。

以上是关于Ojective-C学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

Ojective-C学习笔记

学习笔记:python3,代码片段(2017)

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

DOM探索之基础详解——学习笔记

学习笔记 链接

ReactJs学习笔记01