笔者最近在做项目的时候需要用 Windows 的批处理程序编译运行 C 文件,之前都是在 IDE 进行代码的编写,知道在 Linux 用 gcc 可以搞定,现在想要在 cmd 下编译运行该如何办呢,因此上网搜了一下资料,用了一个比较简单的方法搞定。
假设笔者在计算机的 E
盘下新建了一个 C 文件 hello.c
,代码如下:
#include<stdio.h>
main()
{
printf("hello, world\n");
}
现需要编译运行该 C 文件,处理办法如下。
一、下载 VC++6.0
我们选择采用 VC++6.0 的 cl 命令
编译 C文件,同时该编译器比较轻便,笔者是从网上下载的绿色版,解压即可。
二、为 cl 命令配置环境变量
为了能够在任何位置使用 cl 命令,将其添加进环境变量,依次点击计算机->属性->高级系统设置->环境变量->path
,在 path
中添加进 VC++6.0 的 Bin
目录,如笔者系统为 win7,在 path
最前面添加 E:\VC6.0\VC98\Bin;
(注意分号 ;
)。
三、打开 cmd 编译 hello.c
打开 cmd (win+R,输入cmd) 编译 hello.c , 发现无法启动 CL.EXE,原因是计算机丢失 mspdb60.dll。
从网上下载 mspdb60.dll
文件,并拷贝到 VC++6.0 的 Bin
目录,如笔者的 E:\VC6.0\VC98\Bin
。
四、重新编译
重新编译 hello.c ,发现找不到头文件。
解决办法是设置头文件和 Lib 文件的路径
,如直接在 cmd 下依次输入:
set INCLUDE=E:\VC6.0\VC98\Include
set LIB=E:\VC6.0\VC98\Lib
然后再编译 hello.c (E盘)
cl hello.c
运行生成的 hello.exe 文件
hello.exe
五、做成 .bat 批处理文件
可以将步骤四中的命令写入 .bat 批处理文件方便执行。
在桌面新建批处理文件 test.bat,在其中写入代码:
set INCLUDE=E:\VC6.0\VC98\Include
set LIB=E:\VC6.0\VC98\Lib
E:
cl hello.c
hello.exe
pause
点击运行 test.bat 即可实现步骤四中的功能,如果想要编译运行其他的 C 文件,只需要修改文件的路径和名称即可。