如何编译和运行C++程序?

C 和C语言类似,也要经过编译和链接后才能运行。在《C语言编译器》专题中我们讲到了 VS、Dev C 、VC 6.0、Code::Blocks、C-Free、GCC、Xcode 等常见 IDE 或编译器,它们除了可以运行C语言程序,还可以运行 C 程序,步骤是一样的,这里不再赘述,读者需要留意的是 C 源文件的后缀,以及 GCC 中的g 命令。

下图是 C/C 代码生成可执行文件的过程:

C 源文件的后缀

C语言源文件的后缀非常统一,在不同的编译器下都是.c。C 源文件的后缀则有些混乱,不同的编译器支持不同的后缀,下表是一个简单的汇总:

编译器Microsoft Visual C GCC(GNU C )Borland C UNIX后缀cpp、cxx、cccpp、cxx、cc、c 、CcppC、cc、cxx

UNIX 是昂贵的商业操作系统,初学者几乎用不到;Microsoft Visual C 是微软的 C/C 编译器,VC 6.0、VS 都使用该编译器。我推荐使用.cpp作为 C 源文件的后缀,这样更加通用和规范。

g 命令

有了C语言开发经验,在 VS、Dev C 、VC6.0、C-Free、Xcode 等常见 IDE 下编译 C 程序易如反掌,只要把源文件的后缀设置为.cpp即可,相信各位读者都能够毫无障碍地驾驭。本节我们重点介绍 Linux GCC 的使用。

在C语言中,我们使用gcc命令来编译和链接C程序。例如编译单个源文件:

gcc main.c

编译多个源文件:

gcc main.c module.c

编译C 程序时,gcc命令也可以使用,不过要增加-lstdc 选项,否则会发生链接错误。例如编译单个源文件:

gcc main.cpp -lstdc

编译多个源文件:

gcc main.cpp module.cpp -lstdc

gcc命令在链接时默认使用C的库,只有添加了-lstdc 选项才会使用 C 的库。

GCC 中还有一个g 命令,它专门用来编译 C 程序,广大 C 开发人员也都使用这个命令。g 命令和gcc命令的用法如出一辙,例如编译单个源文件:

g main.cpp

编译多个源文件:

g main.cpp module.cpp

使用-o选项可以指定可执行文件的名称:

g main.cpp -o demo

./demo

要想理解g 命令,我们得从 GCC 的历史谈起。GCC 是由 GUN 组织开发的,最初只支持C语言,是一个单纯的C语言编译器,后来 GNU 组织倾注了更多的精力,使得 GCC 越发强大,增加了对 C 、Objective-C、Fortran、Java 等其他语言的支持,此时的 GCC 就成了一个编译器套件(套装),是所有编译器的总称。

在这个过程中,gcc命令也做了相应地调整,它不再仅仅支持C语言,而是默认支持C语言,增加参数后也可以支持其他的语言。也就是说,gcc是一个通用命令,它会根据不同的参数调用不同的编译器或链接器。

但是让用户指定参数是一种不明智的行为,不但增加了学习成本,还使得操作更加复杂,所以后来 GCC 又针对不同的语言推出了不同的命令,例如g 命令用来编译 C ,gcj命令用来编译 Java,gccgo命令用来编译Go语言。

在以后使用 Linux GCC 时,我推荐使用g 命令来编译 C 程序,这样更加简洁和规范。

关注小编公众号;程序员大咖,还有更多为大家分享的精彩内容哦~~~

(0)

相关推荐

  • 在DOS环境下编译及运行java程序教程

    提供一段批处理代码程序,更加方便快捷地对java程序进行编译运行,提高了效率. 操作方法 01 一 自己动手编译运行java程序 学计算机或者软件的同学一般会学到java语言编程,为了让学生熟悉jav ...

  • 如何使用eclipse新建并编译、运行Java程序

    如果是用eclipse来开发,编辑java项目,我们怎样在eclipse下新建,并运行Java程序?下面来看下. 操作方法 01 点击打开eclipse, 02 然后点击'file'下的new,选择' ...

  • dos窗口下编译运行Java程序

    电脑配置jdk之后可以在dos窗口下编译运行Java程序了.下面介绍具体使用方法. 操作方法 01 win+R,输入cmd回车,打开dos窗口. 02 先测试一下jdk是否成功安装,输入javac命令 ...

  • Go语言教程:[6]编译运行GO程序

    前面我们有写过一些GO语言开发环境和如何使用GO的IDE编辑器: 当我们写完GO代码之后怎么运行GO代码也是一个比较纠结的问题:如果你用过Python的话就知道Python代码写完之后直接F5就开始运 ...

  • 如何在Visual Studio 2017 中编译运行C程序

    Visual Studio 2017是一款很好的C/C++编译器,但是刚刚接触时可能会不会用,今天就教大家如何在Visual Studio 2017 中编译运行C程序. 操作方法 01 打开Visua ...

  • 如何用记事本编译运行java程序

    如果你是一个刚刚学习Java语言的人,那么你是不是感到用eclipse运行一个小程序十分的麻烦?我教你在记事本上习编译与运行java语言! 看我是如何做的! 操作方法 01 首先你需要在电脑上新建一个 ...

  • 怎样使用VC软件编译并运行C语言程序

    Visual C++ 6.0是一款非常好的软件,它不仅可以运行C代码程序,还可以创建位图和PPT等工程文件,现在的全国计算机等级考试(二级C)指定的编译软件就是VC6.0,现在我们一起来学习编译并运行 ...

  • kali linux运行java程序

    我一般是在windows上运行java程序.这次在kali linux上运行java程序.在我们安装的kali linux2.0是自带了OpenJdk.所以我们不用安装JDK.也不用设置环境变量. 操 ...

  • Codeblocks新建C/C++项目,并编译、运行、查看

    Codeblocks是一款开源的轻量级的IDE,安装方便,使用简单,查看本使你快速学会使用Codeblocks,新建项目,编辑,编译和运行程序.让我开始吧! 操作方法 01 双击 Codeblocks ...

  • 如何在Code::Blocks中运行一个程序

    本文以图片和说明,手把手教你在Code::Blocks中运行一个C程序. 运行C程序 01 首先新建一个工程:File--->New--->Project. 02 接着选择Console ...