`

Objective-C开发——最简单的Objective-C程序与基础语法解析

阅读更多

你可能见过C语言版本的经典“Hello World”程序,该程序可输出“Hello World”或类似的简短语句。“Hello World”通常是C语言编程初学者要学习的第一个程序。我们将继承此优良传统,便携一个类似的程序,这里称为“Hello Objective-C”

解构Hello Objective-C程序

hello Objective-C.m内容如下;

#import <Foundation/Foundation.h>

 

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

{

NSLog (@”hello, Objective-C!”);

 

Return (0);

 

}

Xcode的.m扩展名表示文件含有Objective-C代码,应由Objective-C编译器处理。C编译器处理名称以.c结尾的文件,而C++编译器处理.cpp文件。在Xcode中,所有这些编译工作全由GCC(GNU Compiler Collection,GNU编译器集合)处理,这个编译器能够理解C语言的全部3哥变体。

如果了解普通的C语言,那么你应该很熟悉.m主文件中包含的两行代码:main()声明和末尾的return(0)语句。请记住,Objective-C本质上就是C语言,它用来声明main()和返回值的语法和C语言是一样的。其他代码看上去与正规的C语言有些许差别,例如:这个陌生的#import是什么?

Objective-C刚诞生的时候,扩展名.m代表message,指的是Objective-C的一个主要特性。

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

#import <Foundation/Foundation.h>

 

#imiport是GCC编译器提供的,Xcode在编译 Objective-C、C和C++程序时都会使用它。#import可保证头文件只被包含一次,而不论此命令实际上在那个文件中出现了多少次。(在C语言中,程序员通常使用基于#ifdef命令的方案来避免一个文件包含另一个文件,而后者又包含第一个文件的情况。而在Objective-C中,程序员使用#import实现这个功能。)

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

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics