一、打开XCode4.6.3,新建项目

二、选择Application下的命名行项目

三、输入项目名称,选择Foundation框架创建项目,点击Next

四、二话不说、点击Run、启动我们创建的项目

可以看到输出结果:

好了,第一个OC应用创建完毕!接下来解释下Main.m的内容:

1、#import是一个导入命令,类似于C语言的#include命令,但是相对于#include而言,#import有效的处理了重复导入的问题,在C语言中也提到过如何通过条件编译解决重复导入,而在OC中你不需要处理了,#import已经自动进行了重复处理;

与#include类似,导入系统类库使用<>,如#include <stdio.h>,导入自定义类库使用””

2、Main函数头部引入了Foundation.h是Foundation框架中的头文件,这是OC中的一个基础类库,所以基本上后面我们用到的所有OC的代码都需要引入这个类库(引用一般是引入头文件),因为我们也是用到了NSLog()这个函数。

Foundation.h的位置

3、@autoreleasepool这是OC的关键字,作用在于这个关键字后面大括号 包含的内容,程序会自动回收,不需要手动去释放,类似C#using(){}一样的垃圾回收机制,但是原理上不一样

4、NSLog是标准的输出函数,累死于C语言的printf()和C#的Console.WriteLine()函数,但是它会自动换行,它同样支持格式输出(例如%i表示输出整形数据,%f输出浮点型数据),这个函数在Fundation.h中声明

5、OC的字符串都需要加@"",例如:@”Hello,World!”,是一个字符串常量

补充下上章说的OC的基本数据类型:

1、BOOL类型(包含两个值YES和NO),其实OC的BOOL类型就是整数1和0

2、id类型,是一个对象类型,可以代表所有对象,这个跟C#的var相似

3、NSString字符串类型,是Fundation定义的。因为在C语言,代表一个字符串只能通过指针的方式来指定,例如char *,在OC直接就是NSString *str=@"哈哈";

NSLog(@"object is =%p",nil);

4、我们看到%p,这就是格式符,就是通过替换占位的方式,把值替换到这个位置,下面列出常用的格式符

%f 小数的形式输出单精度、双精度的浮点数 %Lf 长双精度类型

%@ 输出一个字符串

%p 输出一个指针对象(对象类型)

%c 输出一个字符

%x 以不带符号的十六进制输出整数

%o 以不带符号的八进制输出整数

%u 输出无符号整形

%i 以十进制形势输出整数  %hi 输出短整数  %li 输出长整数

5、在C语言或者OC都可以用%i或者%d来格式化,只有在使用Scanf()输入的时候二者才有区别,%d会被编译器解释为Decimal intergeer所有输入010会被解释为整型10,而%i的话,会将前面的0或者0x认为输入的是八进制或者是十六进制

6、%p就是代表指针地址,在32位的编译器对于指针类型使用%x和%p输出结果都是一样的,但是后者会在前面加上“0X",注意在64位编译器下由于指针长度8byte,而整形只有4byte所以%x输出的内容只是%p的低位数据

02第一个OC程序的更多相关文章

  1. 第一个OC类、解析第一个OC程序

    01第一个OC 类 本文目录 • 一.语法简介 • 二.用Xcode创建第一个OC的类 • 三.第一个类的代码解析 • 四.添加成员变量 • 五.添加方法 • 六.跟Java的比较 • 七.创建对象 ...

  2. [OC笔记]我的第一个OC程序

    这是我第一个OC程序,详情都写在了注释里面,讲的是Student和Book这两个类的创建和使用.(是不是觉得student这个类在各种语言入门代码里经常出现呢?真实有爱) 看完这些,你会发现,咱们其实 ...

  3. IOS开发——01_第一个OC程序

    本文目录 一.新建Xcode项目 二.运行项目 注:建议先学习C语言, 如果你还没有编程经验,看不懂的地方可以在评论区提出,本文使用的为Xcode6.1版本,与之前版本会有所差异,但总体不变. 另:还 ...

  4. 【Objective-C】04-第一个OC程序解析

    说明:这个Objective-C专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序猿,可以高速上手Objective-C.假设你还没有编程经验,或者对Objective-C.iOS开发 ...

  5. 手动创建第一个OC程序

    手动创建第一个OC程序 创建一个文件夹,文件夹内创建一个a.m的OC源文件,并编辑 之前说过,OC是完全兼容C语言的,那么我们先写个下面的程序尝试一下 #include<stdio.h> ...

  6. 第一个OC程序

    第一个OC程序源码如下: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @auto ...

  7. 【Objective-C】03-第一个OC程序

    一.打开Xcode,新建Xcode项目 二.选择最简单的命令行项目 因为我们只是学习OC语法,还未正式进入iOS开发,所以选择命令行项目即可 三.输入项目名称,选择Foundation框架进行创建项目 ...

  8. 我曾经的第一个OC程序

    一. OC简介 C语言的基础上,增加了一层最小的面向对象语法 完全兼容C语言 可以在OC代码中混入C语言代码,甚至是C++代码 可以使用OC开发Mac OS X平台和iOS平台的应用程序 二. OC语 ...

  9. 05_传智播客iOS视频教程_第一个OC程序

    Cocoa Application开发的是带界面的程序. OC是完全兼容C语言的,但是C语言里面是不能写OC的东西的. OC和C的第一个区别,就是源文件的后缀名的区别.OC程序的源文件的后缀名是.m, ...

随机推荐

  1. Log4J日志配置详解

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  2. 为普通Object添加类似AttachedProperty的属性

    为普通Object添加类似AttachedProperty的属性   周银辉 我们知道,在WPF中对应一个DependencyObject,我们很容易通过AttachedProperty来为类型附加一 ...

  3. ES5基础之正则表达式01:初次见面

    1.正则初次见面 测试地址:https://regexper.com 第一个正则:匹配 2006-10-11 或 2006/10/11 var reg = /^\d{4}[-/]\d{2}[-/]\d ...

  4. jquery富文本在线编辑器UEditor

    UEditor 是由百度「FEX前端研发团队」开发的所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码. UEditor的功能非常强大,官方 ...

  5. ElasticSearch第一步-环境配置

    ElasticSearch第一步-环境配置 ElasticSearch第二步-CRUD之Sense ElasticSearch第三步-中文分词 ElasticSearch第四步-查询详解 Elasti ...

  6. 基于C/S架构的3D对战网络游戏C++框架 _02系统设计(总体设计、概要设计)

    本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): ...

  7. 光盘刻录 CD刻录软件 Ashampoo Burning Studio特别版 刻录CD就这么简单

    著名的刻录软件Nero,其近上百M体积实在太大,而且安装之后的文件体积也有上G多.这么大的体积安装使用都不方便,好在现在很多都做得很不错,比如阿香婆的光盘刻录软件Ashampoo® Burning S ...

  8. css-css权威指南学习笔记4

    第三章 1.继承的值没有特殊性,甚至连0的特殊性都没有.所以改变超链接的样式一般需要独立声明,无法通过继承改变. 2.层叠--冲突的声明通过这个层叠的过程排序,并由此确定最终的文档表示.这个过程的核心 ...

  9. bzoj 4318 OSU!

    期望dp. 考虑问题的简化版:一个数列有n个数,每位有pi的概率为1,否则为0.求以每一位结尾的全为1的后缀长度的期望. 递推就好了. l1[i]=(l1[i-1]+1)*p[i]+0*(1-p[i] ...

  10. 动态规划(DP)基础

    DP基础 简单dp 背包问题 记忆化搜索 简单dp 数字三角形 给一个数字构成的三角形,求从顶端走到底部的一条路径,使得路径上的和最大(或者最小). 1 2 3 6 5 4 Example_1 7 3 ...