首页 > 代码库 > 【Smallfan的ios学习笔记 01】编译并运行第一个程序

【Smallfan的ios学习笔记 01】编译并运行第一个程序

本文来自:博客园CoderSmallfan。转载请注明出处:http://www.cnblogs.com/codersmallfan/p/3746329.html

 

  如同学习其他平台开发一样,学习ios开发也应掌握一门语言并以一个操作系统作为平台,这门语言就是objective C,而这个操作系统为Mac OSX。如果英语稍微及格的同学应该能从objective这个单词看出点门道,object的中文意为对象[计],objective直意为目标,在这里实际上是面向对象的意思,其实就是一门扩充C的面向对象编程语言,概念这种东西作为小菜鸟我也不懂,所幸我们有objective-c指引。而Mac OSX是苹果的操作系统,这是一款不同于windows系列的操作系统,学习ios开发前需要尝试使用它(不必很专业,但至少要会使用),同样给传送。

     学习ios开发至少需要具备以下条件:

    1. 一台mac计算机(macbook air、macbook pro[推荐]、mac mini、iMac、Mac pro都可以)
    2. osx操作系统(有些废话)
    3. 编译集成环境xcode(推荐5.0以上版本,前期也可以使用bash+文本编辑)


  确保具备以上条件后,就可以开始进行学习了。

  因为osx是基于unix内核的,所以使用的是unix命令集。unix命令集是个相当强大且庞大的工具,但前期似乎我们只需要掌握那么几个命令即可。首先我们尝试从终端(Terminal)创建一个源文件。打开Terminal的步骤如下:Finder→应用程序→实用工具→终端。(如下图,默认为白底黑字,可自行修改颜色模式)

  常用命令为:mkdir、touch、open、cd、ls -l、cc -c、cc。

  •   mkdir为创建一个文件夹,用法:mkdir Prog   //创建一个命名为Prog的文件夹
  •   touch为创建一个文件,用法:touch myFirstCode.m  //创建一个命名为myFirstCode.m的文件(objective c的源文件后缀为.m,不同于c的.c或c++的.cpp)
  •   open为打开一个已存在文件,用法:open myFirstCode.m   //打开myFirstCode.m文件(如已安装xcode,默认将用其打开)
  •   cd为进入某一层目录,用法:cd Prog  //将目录定位到Prog文件夹中
  •   ls -l为浏览当前目录中的所有文件,用法:ls -l
  •   cc -c为编译指令,用法:cc -c myFirstCode.m  //编译myFirstCode.m文件,生成目标文件myFirstCode.o
  •   cc 为链接指令,用法:cc myFirstCode.o -framework Foundation  //链接myFirstCode.o目标文件(文件中使用了Foundation,所以需要包含-framework框架参数),生成a.out文件

 

      

  打开之后如右上图,即是xcode编辑界面。

  接下来按照国际惯例,我们来编写hello world程序。

  代码如下:

  

1 #import <Foundation/Foundation.h>
2 
3 int main(int argc , const char *argv[])
4 {
5   @autoreleasepool{
6         NSLog(@"Hello World!");
7   }            
8 }

 

  编译链接执行过程及结果如下:

  

 

  看到没有,Hello World!我们第一个程序就完成了,当然,这里暂时没讲解语法,相信有c语言基础的同学都看得懂,至于@autoreleasepool是什么暂时不管,NSLog类似于printf。下面介绍如何完全使用xcode建立工程及编译链接到运行。

  打开Finder→应用程序→xcode.app

  点击Create a Xcode project按钮创建一个新的工程。

 

  选择OS X中的Application选项,在右边窗口选择Command Line Tool创建控制台程序。

  Type选择你的程序库类型,objective-c选择Foundation框架,c语言选择c,c++选择c++等。

 

 

  点击左栏的main.m文件即可开始编辑代码,编辑后按左上角的即可进行编译→链接→运行。结果如下:

 

  咦?运行结果在哪儿呢?仔细看看,是不是在右下的窗体里,Hello World,看到了没有?