美文网首页学计算机的那点事儿
使用cl编译器编译和链接C语言文件

使用cl编译器编译和链接C语言文件

作者: 北方素素 | 来源:发表于2018-03-06 23:01 被阅读46次

大家好,我是北方素素。

也许你已经看过我录制的《素素带你学C语言》系列的视频,在这里,我准备将一些小知识记录下来,一方面是给自己提供备忘,另一方面也能普及一下这方面的知识。

这篇文章的主要内容是如何在命令行使用visual studio的cl编译器。

首先,visual studio使用的编译器叫做cl编译器,要怎样使用呢?我们需要在安装完visual studio(这里我用的是community 2017版)后,在开始菜单找到“适用于VS2017的x64本机工具命令提示”,然后打开,界面如下:

适用于VS2017的x64本机工具命令提示

之后,我们先在这里输入cl,查看一下简介:

cl编译器简介

接下来就可以使用了。

我们首先在电脑上写好一个C语言文件-hello.c

然后使用命令切换到hello.c所在的文件夹。这里我直接放在了F盘下:

使用命令切换文件夹

这里用到的命令是 cd /d 你的文件夹目录

可以看到已经切换到F盘下了,接着我们输入cl hello.c

编译之后自动链接生成exe文件

这个时候默认是先进行编译,之后自动进行链接,所以现在文件夹下应该多出来两个文件,一个是编译后生成的hello.obj,一个是链接完生成的hello.exe。

我们输入hello执行一下hello.exe。

执行完hello的结果

那么如何分别进行编译和链接呢?

首先删除文件夹下的hello.obj与hello.exe。

然后执行cl /c hello.c

执行cl /c hello.c的结果

这个时候只进行了编译,所以文件夹内只多了一个hello.obj文件。

接下来使用link hello.obj进行链接

执行link hello.obj的结果

这个时候文件夹内就会多出hello.exe这个文件啦~执行一下,结果是和之前一样的。

好了,关于cl编译器的使用就写到这里。

补充一下:虽然我们能够理解C语言源代码,但是机器不能,机器只能识别被称为机器语言的二进制指令,必须要把源代码转换为机器语言,计算机才能执行我们的程序。而编译的作用就是将我们写好的源文件翻译为机器能够看懂的二进制指令。.obj文件就被叫做目标文件,里面包含的代码叫做目标代码。

如果程序中使用了库函数,那么在生成可执行程序(exe文件)之前,需要将我们的目标文件与库函数中的目标代码组合起来,这个组合的过程就叫做链接。

经过编译和链接,最终生成了可以运行的exe程序~

作者:北方素素

https://www.bilibili.com/read/cv271176

出处: bilibili

相关文章

  • 使用cl编译器编译和链接C语言文件

    大家好,我是北方素素。 也许你已经看过我录制的《素素带你学C语言》系列的视频,在这里,我准备将一些小知识记录下来,...

  • Linux 编译和链接程序

    Linux 编译和链接程序 使用编译器gcc g++Linux可执行程序编译步骤1、编译c/cpp文件 ->.o2...

  • 知识点OC文件生成C++文件

    生成 使用clang编译器将Objective-C代码编译成C语言代码, 并生成在一个.cpp的 C++文件中: ...

  • OC代码转C++代码的生成

    使用clang编译器将Objective-C代码编译成C语言代码, 并生成在一个.cpp的 C++文件中。具体的命...

  • 第一章

    编译器:把高级语言程序翻译成计算机能理解的机器语言指令集的程序。 C语言是通过编译和链接两个步骤来将源代码文件转换...

  • 突发脑洞,C语言编译器为什么能够用C语言编写?

    不知道大家有没有想过一个问题:C语言编译器为什么能够用C语言编写? 所谓C语言编译器,就是把编程得到的文件,比如....

  • c和c++混编注意事项

    1、c的编译器与c++编译器生成函数签名机制不同,所以在cpp文件中引用c语言的函数需要加 extern C{ ...

  • LLVM

    C,C++,OC等语言,都是使用的编译器,生成相关的可执行文件, 与之对应的Python,Shell等脚本性语言,...

  • C++——this指针

    this指针的出现是因为在早期没有c++编译器,c++程序只能使用c语言的编译器进行编译。所以c++的程序先需要翻...

  • Note

    C语言基础头文件的使用防止头文件被重复包含宏的使用gcc编译器的基本使用函数的声明、调用、传参 VC Code工具...

网友评论

    本文标题:使用cl编译器编译和链接C语言文件

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