美文网首页
如何开始?

如何开始?

作者: labi3285 | 来源:发表于2017-09-14 21:24 被阅读8次

目标:在终端窗口打印Hello World。

1、编写代码

采用记事本或者XCode编辑代码,代码如下:

//包含文件  
#include <stdio.h>  

//程序入口(主函数)  
int main()  
{  
    printf("HelloWolrd!\n");  // 输出部分    
    return 0;  
} 

将此文件以.c格式进行存储。

2、编译和链接

什么是编译和链接呢,上面我们做成的文件是一个文本文档,电脑是不能直接运行的,电脑只能识别二机制码,我们需要用开发工具将这个文本转化成二机制码。需要用到终端进行操作。
打开终端,通过cd指令定位到程序所在目录(最初的操作都是从终端指令开始的,我们平时的鼠标等操作是系统屏蔽了这些基础细节),并通过ls指令查看当前目录下的所有文件:

$ cd /Users/labi3285/Desktop/Study   
$ ls  
HelloWord.c  

接着上面的步骤,通过cc -c指令生成.o文件:

$ cc -c HelloWord.c   
$ ls  
HelloWord.c HelloWord.o  

至此,我们的源文件已经转换为.o文件,该文件为二进制文件,但是该文件还不能被机器解读,因为该文件是独立的,系统并不知道里面调用的print方法以及其他的细节的作用(这些细节在别的文件里创建,这些细节由开发工具去做),为了生成完整的程序,我们就需要将该文件与其他资源进行整合,指令为cc:

$ cc HelloWord.o  
$ ls  
HelloWord.c HelloWord.o a.out  

可以发现,最终生成a.out文件,该文件即为最终生成文件,是不是想赶紧试试呢?
执行该文件,直接./a.out即可:

$ ./a.out   
HelloWolrd!  

程序正确输出结果!

3、其他

a、编译链接两个操作可以一步完成(cc指令),对于较小的程序可以采用这种方式;
b、有多个文件时,链接要一起链接,各文件用空格隔开;
c、编译用到的工具为:Apple LLVM 5.1 ,该工具在xcode内部集成。

相关文章

  • 有易效能重塑线上生活不再只是空想

    如何唤醒身体、如何开始运动、如何合理饮食,如何收集事情、如何分类管理、如何开始记录、如何开始改变习惯,如何...

  • 如何开始?

    加入007后 自从掉入007这个“坑”之后,最近满脑子都是想着007. 如何开始写作,各种信息收集,想看更多的书,...

  • 如何开始……

    前几天微信里有人向我提问,我把问答分享在这里。 问:我现在没有梦想,没有目标,我不喜欢现在的工作环境,又不能摆脱,...

  • 如何开始

    币市一天,人间一年

  • 如何开始

    对我来说,日复一日,没有什么开始。我的梦想是花卉,我想要从茶艺开始,但是貌似没有什么机会……

  • 如何开始?

    目标:在终端窗口打印Hello World。 1、编写代码 采用记事本或者XCode编辑代码,代码如下: 将此文件...

  • 如何开始

    很多人最不缺的经验是,只想不做。 想了很久,但每次开始做的时候由于各种各样的原因而迟迟无法开始。 那如何开始呢? ...

  • 如何开始

    首先下载node.js安装,其中node.js包含了一个npm,这是一个安装包的管理模块,然后将npm所在的路径加...

  • 如何开始

    这里搞了好多事情要做 ,都不知道如何开始想了一下,这么多方面,其实汇总就只有一个主题: 我要升级我的操作系统,我(...

  • 如何开始

    2017-7-6-星期四 《做事的常识》如何开始 大目标拆分成小目标 1、明确目标。 2、拆分目标,将大目标拆分成...

网友评论

      本文标题:如何开始?

      本文链接:https://www.haomeiwen.com/subject/gpljsxtx.html