zoukankan      html  css  js  c++  java
  • c编译步骤

    这几天查编译问题时,在头文件中加入某些错误信息,却发现没有编译报错。想了一下可能是,还未进行到语法分析阶段。

    这里再了解一下编译过程。

    一般而言代码编译包含了四个阶段的处理,即预处理(也称预编译,Preprocessing)、编译(Compilation)、汇编 (Assembly)和连接(Linking):

    1、预处理:预处理的作用主要是读入源代码,处理预处理指令

    预处理指令是以“#”开头的,预处理的处理对象主要包括以下方面:

    • #define    宏定义
    • 条件编译、头文件包含指令
    • #运算符    #运算符作用是把跟在其后的参数转换成一个字符串
    • ##运算符    ##运算符的作用用于把参数连接到一起
    • 特殊符号    __FILE__/__LINE__/__DATE__/__TIME__

    2、编译:编译成汇编语言

    (1)词法分析,

    (2)语法分析

    (3)语义分析

    3、汇编:将上面的汇编指令编译生成目标文件

    从 高级语言->汇编语言->机器语言(二进制)

    4、链接:将程序的目标文件与所需要附加的目标文件链接起来,最终生成可执行文件。附加的目标文件也包括了所需要的库文件(静态链接库和动态链接库)

  • 相关阅读:
    1442. Count Triplets That Can Form Two Arrays of Equal XOR
    1441. Build an Array With Stack Operations
    312. Burst Balloons
    367. Valid Perfect Square
    307. Range Sum Query
    1232. Check If It Is a Straight Line
    993. Cousins in Binary Tree
    1436. Destination City
    476. Number Complement
    383. Ransom Note
  • 原文地址:https://www.cnblogs.com/caidi/p/10299460.html
Copyright © 2011-2022 走看看