XCode4.0之HelloWorld创建及说明----------同样适合XCode4.6.2
来源:互联网 发布:照片调色软件 编辑:程序博客网 时间:2024/06/05 12:46
转载地址:http://blog.csdn.net/mobailwang/article/details/7452788
打开XCode之后,我们开始创建我们的第一个控制台程序“HelloWorld”了,顺便熟悉一下XCode的界面及使用。
首先选择“Create a New Xcode project”,然后选择“Open”按钮;
左侧选择“Mac OS X”下面的“Application”,然后在右侧选择“Command Line Tool”(这表示我们要创建Mac操作系统下面的一个控制台应用程序),然后选择右下角的“Next”按钮;
输入项目名称、公司名称及类别,注意类别要选择“Foundation”,然后选择“Next”按钮;
然后选择项目要保存的文件路径(只需选择项目存放在哪个文件夹,项目自身的文件夹会自行创建,不用再另行输入),然后选择“Create”按钮;
当项目创建成功后,会看到项目的一个属性设置界面,简单的各个界面说明如下:
然后点击“main.m”文件,在右侧会出现文件内容,然后点击左上角的“Run”按钮,执行成功后,会在中间的下面出现一个输出,如下图所示:
那么到这里就完成了第一个HelloWorld控制台应用程序,虽然我们没有手动输入代码,但是在这个过程,我们初步了解了一下XCode开发环境的界面及使用,虽然很简单很基础,可是好歹也算初次使用了一把。
HelloWorld程序解析
在前面,我们利用XCode创建了第一个控制台程序“HelloWorld”,但是有一些地方还是只有一个大概的印象,但不了解,那么这里就再讲解一下。
首先通过项目的文件列表,我们可以发现,项目的代码是存放在“main.m”文件里面,
代码的解析
Xcode的.m扩展名表示文件里面含有objective-c代码,它对应C里面的.c结尾的文件和C++里面的.cpp文件。
在代码中,main和return(0)语句和C里面的作用相当。但不同的是在程序的头部出现的这句代码:
“#import <Foundation/Foundation.h>”
但这句话的作用我们也不陌生,它的作用类似于
“#include <Foundation/Foundation.h>”
因为和C语言一样,objective-c也使用头文件来包含元素声明,包含结构体、符号常量、函数原型等。虽然在objective-c里面也可以用#include来实现,但是#import可以保证头文件只包含一次,而不论这个命令在代码中被出现了多少次。也就是说,它还可以等同于C里面的#ifdef命令。
另外在objective-c,用“<>”表示我们用的是系统里面的“Foundation”框架下面的Foundation.h,而""表示的是程序目录。
什么是框架?常用的框架介绍
框架是一种聚集在一个单元的部件集合,包含头文件、库、图像、声音文件。苹果公司里面主要有Cocoa、Carbon、QuickTime和OpenGL等技术作为框架集提供。而Foundation和Application Kit则是同属于Cocoa的一部分。
这里不一一介绍了,后面有兴趣深入开发的,可以后面自己了解并进行总结。
@autoreleasepool{}
在这里,我理解为项目自动为我们创建一个内存回收的机制,我们在大括号内编写的代码,若存在一些创建对象之类的使用的话,那么出了这个大括号,系统会为我们自动回收。这句话是在XCode3.2里面不曾出现的。若我的理解有误,大家可以指出来共同学习下。
NSLog和@字符串
通过运行结果,我们可以理解NSLog其实就是一种输入函数,则语句向控制台输出,等同于C语言里面的printf()。虽然在objective-c也可以使用printf,但NSLong比其更加的方便,它添加了时间戳、日期戳和自动换行('\n')等。
NSLog(@"youinput is %d", 5);
我们可以看到NSLog里面的输入内容,是@"Hello,World!","Hello,World!"则是要输出到控制台的内容,那么@符号是什么?它是objective-c在标准C语言基础上添加的特性之一,@符号后面在加上双引号的字符串,表示引用的字符串是作为Cocoa的NSString元素来处理。
那么NSString是什么?和NSLog有什么联系呢?
NS的由来
为什么Cocoa的很多元素前面都有NS呢?“|NS”前缀,最早来自于一个NeXT Software公司的NextSTEP工具包,但已经被苹果所收购。苹果公司没有改变这种“NS”前缀而保留至今。所以带有NS前缀的元素,是属于Cocoa的,因此大家的创建元素的时候,不要与此同名,产生混淆。
NSString的特点与使用
前面讲解了NS的由来,那么NSString排除前面的前缀,则是String,是一串字符,那么NString有如下功能:告知其长度;将自身与其他字符串比较;将自身转换为整型值或者浮点值。(它让我想起了MFC里面的CString)
- XCode4.0之HelloWorld创建及说明----------同样适合XCode4.6.2
- XCode4.0之HelloWorld创建及说明
- xcode4.3.2开发iOS应用之HelloWorld
- Xcode4.2 storyboard HelloWorld
- XCODE4.3.2编程-HelloWorld
- xcode4.4.1 helloworld
- Xcode4.0版本自己创建MainWindow.xib
- 从HelloWorld看iphone程序的生命周期(XCode4.0版本)
- 从HelloWorld看iphone程序的生命周期(XCode4.0版本)
- xcode4.2下创建及使用静态库
- iOS xcode4.6 创建项目
- xcode4.2的iphone版的helloworld
- XCode4.0添加Three20
- Xcode4 运行卡等一些问题说明
- XCode4.3.3无证书无真机打包说明
- XCode4.3.3无证书无真机打包说明
- 安装和创建Xcode4一个新项目
- xcode4中如何创建windows-based项目
- Qt国际化
- 07-九藏天下面试总结
- username +password
- iSCSI
- Java 7从入门到精通 目录结构
- XCode4.0之HelloWorld创建及说明----------同样适合XCode4.6.2
- 使用Maven管理依赖JAR文件,自定义项目布局,利用ANT生成不同的发布包
- Oracle Profile 使用详解
- NSAutoreleasePool 和 @autoreleasepool blocks 区别
- 底层网络(3)------高级接口
- 题目1512:用两个栈实现队列 && 包含min函数的栈
- cocos2d-x 实现 愤怒的小鸟 橡皮筋
- UVA-10405-Longest Common Subsequence
- Oracle Database Patchset Numbers