您的位置:首页 > 移动开发 > Objective-C

【iOS开发之Objective-C】新建第一个工程-HelloWorld

2015-06-19 10:45 525 查看
还记得第一次学习C语言的时候的第一个工程吗?C++呢?JAVA呢?是不是感觉没有接触过“HelloWorld”的人就没接触过编程。纯属本人愚见。

今天我写下在Mac系统的Xcode编译的第一个工程“HelloWorld”。欢迎各位指正。

1.打开Xcode,创建HelloWoeld工程。



点击那个大些字母A上面有把锤子的绿色图标,进入如下界面。



选择红色方框部分:Create a new Xcode project。之后进入如下界面。



选择OS X 下的 Applicaton 里面的 Cocoa Application后点击Next按钮。



给工程取名。



存储工程,由于之前我已经建立了这么一个工程,这里不再进一步演示。至此工程HelloWorld也建立完毕。

2.打开主界面,编译代码。



主界面如此,双击红色方框部分,弹出代码编辑框。



系统已经默认的为我们编写好了HelloWorld的代码。



我们点击左上角的这个按钮,编译代码,编译结果如下:



那么到此新建第一个HelloWorld工程完毕了。但是这里由于Objective-C是一门新的语言,我们需要知道这里的代码和以前学习的C代码有什么差异呢?

//
//  main.m
//  HelloWorld
//
//  Created by zhum on 15/6/16.
//  Copyright (c) 2015年 zhum. All rights reserved.
//

#import <Foundation/Foundation.h>

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


为什么头文件是用 #import <Foundation/Foundation.h>?
为什么打印是用 NSLog(@"Hello, World!");?

现在我么你就来解决这两个疑问。

a.和C语言一样,Objective-C使用头文件来包含元素声明,这些元素包括结构体、符号常量、函数原型等。C语言使用#include语句通知编译器应在头文件中查询定义。在Object-C程序中也可以使用#include来实现这个目的。但你可能永远不会那么做,而像下面这样使用#import:

#import <Foundation/Foundation.h>

#import是GCC编译器提供的,Xcode在编译Objective-C、C和C++程序时都是使用它。

#import可保证头文件只被包含一次,而不论次命令实际上在那个文件中出现了多少次。

#import <Foundation/Foundation.h>语句告诉编译器查看Foundation架构中的Foundation.h头文件。

b.在Objective-C中,NSLog相当于C语言中的printf,常用于文字输出。但我建议使用NSlog(),因为他添加了特性,例如时间戳、日期戳和自动附加换行符('\n')等

在Cocoa对其所有 函数、常量和类型都添加了“NS”前缀。这些前缀告诉你函数来自Cocoa而不是其他工具包。

NSLog可以如下面的方法使用:

NSLog (@"this is a test");

NSLog (@"string is :%@", string);

NSLog (@"x=%d, y=%d", 10, 20);

NSLog的格式如下所示:
%@
对象
%d, %i
整数
%u,%z
无符整形
%f
浮点/双字
%x, %X
十六进制整数
%o
八进制整数
%zu
size_t
%p
指针
%e
浮点/双字 (科学计算)
%g
浮点/双字
%s
C字符
%.*s
Pascal字符串
%c
字符
%C
unichar
%lld
64位长整数(long long)
%llu
无符64位长整数
%Lf
64位双字
%hhdBOOL布尔类型
百度百科NSlog
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: