• C语言讲义——“编译、链接”


    HelloWorld

    HelloWorld

    最简HelloWorld

    1. include <stdio.h> 指令:标准输入输出头文件。

    2. main函数 C语言程序的唯一入口。
    #include <stdio.h>
    
    main() {
    
            printf("Hello World");
    
    }
    

    main()是C语言中主函数名最简化的写法

    C语言的“编译、链接”

    我们写的代码,本质上是文本文件(txt),不管后缀怎么变,终究是文本文件,计算机只能显示,不能做事(执行)。

    文本文件通过“编译、链接”,成为可执行文件(windows下是exe):

    • 编译:生成.o文件,也被称为“对象文件”、“目标文件”。
    • 链接:将有关的目标文件连接起来,使所有的.o文件成为一个可执行的整体。

    为什么要生成“.o文件”?这不是多此一举嘛?

    ——大型程序往往需要分文件写,每个源文件会生成对应的.o文件,修改其中一个源文件,编译时只重新编译该文件。如果编译直接生成最终文件,改一个文件则整个工程都要重新编译。

    .o好比活字印刷的一个字,错了直接重刻一个字就好了,而不用整版重刻。

    编译又分为“预编译”、“编译”两个步骤:

    • 预编译(Preprocessing):读取c源程序,对其中的伪指令(以#开头的指令)进行替代。【好比发帖时,不能出现的字用X代替】,输出的还是文本文件。
    • 编译(Compilation):将预编译后的文件翻译成机器码,生成.o文件。
    • (某些编译器会先转为汇编码,然后再转为机器码,所以有的地方会说编译包括“预编译、编译、汇编”3步)

    打个比方——

    写代码:买菜
    预编译:切菜
    编译:炒菜
    链接:上桌

  • 相关阅读:
    window.location.reload();页面实现跳转和刷新
    vue自定义指令--directive
    1019 数字黑洞
    1018 锤子剪刀布
    1017 A除以B
    1016 部分A+B
    1015 德才论
    1014 福尔摩斯的约会
    1013 数素数
    1012 数字分类
  • 原文地址:https://www.cnblogs.com/tigerlion/p/11191215.html
Copyright © 2020-2023  润新知