美文网首页
[C++之旅] 0 Mac下编译运行C/C++

[C++之旅] 0 Mac下编译运行C/C++

作者: Onicc | 来源:发表于2018-10-02 23:17 被阅读0次

    [C++之旅] 0 Mac下编译运行C/C++

    • 编译c语言时采用gcc指令
    • 编译c++语言时采用g++指令

    以下以c++为例,采用g++。

    一、单文件编译

    1.采用命令行编译

    新建Temp.cpp文件,写入:

    #include <istream.h>
    
    using namespace std;
    
    int main()
    {
        cout << "This is a Test.\n" << endl;
        return 0;
    }
    

    打开终端,输入:

    cd Temp.cpp所在的文件路径
    g++ Temp.cpp
    ./a.out
    

    执行gcc Temp.cpp会生成一个a.out的可执行文件,./a,out即为执行改文件

    输出结果为:

    This is a Test.
    

    2 采用VS Code

    其实与第一种方式基本一致,采用vs code只是方便一些。

    新建Temp文件夹,在Temp文件夹内新建Temp.c文件,用VS Code打开Temp文件夹,在Temp.cpp中添加如上代码保存,在VS Code中打开TERMINAL,输入

    g++ Temp.cpp
    ./a.out
    

    此时不用指定c文件所在路径,输出结果与上相同。

    二、多文件编译

    假设有main.cpp、part1.cpp、part1.h、part2.cpp、part2.h、part3.cpp、part3.h其中main.cpp包含main入口函数。在终端输入:

    g++ -c part1.cpp -o part1.o
    

    即将part1.cpp编译为part1.o文件,但不可执行,因为没有main函数入口,此时part.o为计算机能识别的机器码,运用相同的方式编译part2和part3,即:

    g++ -c part2.cpp -o part2.o
    g++ -c part3.cpp -o part3.o
    

    最后执行编译main.cpp

    g++ part1.o part2.o part3.o main.cpp
    

    最终生成a.out可执行文件,最后执行:

    ./a.out
    

    即输出。

    相关文章

      网友评论

          本文标题:[C++之旅] 0 Mac下编译运行C/C++

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