Objective - c   Chapter 1  Hello world

1.1

1.2.On the Welcome screen, click "Create a new Xcode project" (see Figure 2-1), or just choose
File ->New ->New Project.

1.3.在main里写如下代码

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {

    @autoreleasepool {

        // insert code here...

        NSLog(@"Hello, World!");

    }

    return 0;

}

 

Build and run the program by clicking the Run button or pressing ⌘R.

Open the Xcode console window (by selecting View Debug Area Activate Console or pressing ⌘⇧C), which displays your program's output,

Now Let's pull it apart and see how it works .

1.4.1

#import

#import <Foundation/Foundation.h>

#import guarantees that a header file will be included only once, no matter how many times the #import directive is actually seen for that file.

#import 保证头文件只能被包含一次,不论#import 引入多少次这个文件。

1.4.2

Introducing Frameworks

A framework is a collection of parts—header files, libraries, images, sounds, and more—collected together into a single unit.

一个框架包含了头文件,库,图片,声音甚至更多到一个单元中。

The header files for the Foundation framework take up nearly a megabyte of disk storage and contain more than 14,000 lines of code, spread across over a hundred files. When you include the master header file with #import <Foundation/Foundation.h>, you get that whole vast collection.

Xcode is smart: it speeds up the task by using precompiled headers, a compressed and digested form of the header that's loaded quickly when you #import it.

Xcode 很聪明: 它使用预编译头文件,压缩

1.4.3

NSLog and @"Strings "

NSLog (@"Hello, Objective-C!");

The NS Prefix: A Prescription Against Name Collisions

NS前缀: 预防名字冲突。

Rather than break compatibility with code already written for NextSTEP, Apple just continued to use the "NS" prefix. It's a historical curiosity now, like your appendix.

历史原因,原来NestStep的缩写NS。所以一直这么简写了。

1.4.4

NSString: Where it's @

A string in double quotes preceded by an at sign means that the quoted string should be treated as a Cocoa NSString element.

一个在双引号前加at 符号@ 意思是说被引用的字符串应该视为cocoa NSSting 元素。

an NSString is a sequence of characters in Cocoa.

一个NSstring是一些列在cocoa中得字符。

NSString elements have a huge number of features packed into them and are used by Cocoa any time a string is needed. Here are just a few of the things an NSString can do:

Tell you its length
   Compare itself to another string
   Convert itself to an integer or floating-point value

You can tell Xcode to always treat warnings as  errors .

设置xcode使得对待警告如同错误。

1.5 Are you the  boolean type ?

Many languages have a Boolean type, which is, of course, a fancy term for variables that store true and false values. Objective-C is no exception.

oc 也有Boolean 类型。

类型是Bool 。

Objective - c Chapter 1 -2 Hello world的更多相关文章

  1. Automake

    Automake是用来根据Makefile.am生成Makefile.in的工具 标准Makefile目标 'make all' Build programs, libraries, document ...

  2. 如何写出优秀的研究论文 Chapter 1. How to Write an A+ Research Paper

    This Chapter outlines the logical steps to writing a good research paper. To achieve supreme excelle ...

  3. Objective C中的ARC的修饰符的使用---- 学习笔记九

    #import <Foundation/Foundation.h> @interface Test : NSObject /** * 默认的就是__strong,这里只是做示范,实际使用时 ...

  4. Objective的字符串拼接 似乎没有Swift方便,但也可以制做一些较为方便的写法

    NSString *str1 = @"字符串1"; NSString *str2 = @"字符串2"; //在同样条件下,Objective的字符串拼接 往往只 ...

  5. [转] 从 C 到 Objective C 入门1

    转自: http://blog.liuhongwei.cn/iphone/objective-c/ 进军iPhone开发,最大的难点之一就是怪异的Objective C语法了.不过,了解之后才发现,原 ...

  6. Objective C运行时(runtime)

    #import <objc/runtime.h> void setBeingRemoved(id __self, SEL _cmd) { NSLog(@"------------ ...

  7. Objective C ARC 使用及原理

    手把手教你ARC ,里面介绍了ARC的一些特性, 还有将非ARC工程转换成ARC工程的方法 ARC 苹果官方文档 下面用我自己的话介绍一下ARC,并将看文档过程中的疑问和答案写下来.下面有些是翻译,但 ...

  8. Modern C++ CHAPTER 2(读书笔记)

    CHAPTER 2 Recipe 2-1. Initializing Variables Recipe 2-2. Initializing Objects with Initializer Lists ...

  9. Objective -C学习笔记之字典

    //字典:(关键字 值) // NSArray *array = [NSArray array];//空数组 // NSDictionary *dictionary = [NSDictionary d ...

随机推荐

  1. Highcharts报表——让你的网页上图表画的飞起

    Highcharts是一款纯javascript编写的图表库,能够很简单便捷的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图.柱状图.饼图.散点图等多达 ...

  2. MVC架构在游戏开发中的应用

    一 定义 MVC即Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写. MVC是一种"前端"的设计模式. MV ...

  3. Axure安装fontawesome字体

    http://www.fontawesome.com.cn/ 下载后,双击安装字体提示  不是有效的字体,百度 ..解决方法: 任务管理器--服务-- MpsSvc-Windows Firewall ...

  4. css class嵌套

    css 代码: <style> .chose_bonus { font-size:9px;width:400px;border: 2px solid #dddddd;margin-top: ...

  5. caioj1272&&codeforces 148D: 概率期望值3:抓老鼠

    这道真的是好题,不卡精度,不卡细节,但是思考的方式很巧妙! 一开始大家跟我想的应该差不多,用f[i][j]表示有i只白老鼠,j只黑老鼠的胜率,然后跑DP,然后我就发现,这样怎么做?还有一种不胜不负的平 ...

  6. eclipse自动创建项目出错Cannot change version of project facet Dynamic Web Module to 2.3.

    Cannot change version of project facet Dynamic Web Module to 2.3. step1:修改properties step2:修改web.xml ...

  7. HDU - 4333 Revolving Digits(拓展kmp+最小循环节)

    1.给一个数字字符串s,可以把它的最后一个字符放到最前面变为另一个数字,直到又变为原来的s.求这个过程中比原来的数字小的.相等的.大的数字各有多少. 例如:字符串123,变换过程:123 -> ...

  8. less 使用入门

    LESSS是基于JavaScript,所以,是在客户端处理的. 使用less很简单: 1 下载less.js 2 新建less文件后缀名称是.less 3 在页面中引入less文件,跟引入普通的css ...

  9. OC:基础总结

    OC面向对象的编程语言思想 类与对象.继承与实例化.属性点语法.内存管理.字符串.可见度. 类是一组具有相同特征和行为的事物的抽象 OC的与C相比所具有的新的特点: 定义新的类.类的实例和方法.方法的 ...

  10. 类似查询mysql数据库的查询XML的JS类

    一个快捷操作XML数据库的Javascript接口对象,包含select.count.tables.fields等方法,能够像操作mysql等其它数据库一样操作XML数据库. if(document. ...