设置Windows上的C开发环境
Visual Studio IDE功能强大,使用这个IDE,你不需要考虑环境问题,一切都设置好了。但也正是因为Visual Studio过于强大,有时候在做些小项目或练习的时候,显得过于笨重。基于此,Visual Studio还提供了手工工作的CLI环境,即Tools菜单下的Command Line。
但可不可以不启动Visual Studio,直接进入手工工作的CLI环境呢?可以的。下面就来看看如何设置C的CLI环境。
1、任务描述
为了练习 sqlite 数据库的 C API,需要能够手动编辑、编译C代码。其中的样本代码如图1所示。
图1 C样本文件 query.c
2、设置传统的命令提示符环境
传统的命令提示符环境就是由 cmd.exe 启动的环境。首先创建一个快捷方式,命名为 C Terminal,如图1所示。
图1 创建快捷方式
其中,Target设置为:C:\Windows\System32\cmd.exe /k "VsDevCmd.bat&&CD %USERPROFILE%",启动目录(Start in)设置为"C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools"。
上述Target中 cmd.exe 所要执行的命令字符串包含了两条命令,一个是 VsDevCmd.bat,这是Visual Studio提供的创建CLI环境的批处理命令文件。另一个是 CD %USERPROFILE%,这条命令的意思是在执行完 VsDevCmd.bat 批处理命令设置好环境之后,将当前目录改变到你的根目录。&&是命令连接符号,cmd.exe在执行多条命令时,命令之间需要使用&&符号连接并用引号括起来。
这样设置之后,点击此快捷方式,启动的 cmd 窗口即为环境就绪的CLI窗口,如图2所示。
图2 环境就绪的CLI窗口
环境设置好以后,就可以编译了,为此,写了一个 cc.bat:
CL.exe /I. /Fe%1.exe %1.c sqlite3.c
运行该批处理命令,如下,编译成功。
C:\sqlite>cc.bat query.c
3、设置PowerShell环境
自从微软推出PowerShell之后,传统的命令提示符窗口逐渐就被PowerShell所代替。下面就来看看如何设置PowerShell的C开发环境。
Visual Studio在Tools名录下提供了设置PowerShell环境的脚本文件 :Launch-VsDevShell.ps1,只要让PowerShell在启动时执行这个脚本文件即可。
PowerShell 7的根目录位于 <用户根目录>\Documents\PowerShell,在此目录下创建名为 Microsoft.PowerShell_profile.ps1 的脚本文件,内容为:
C:\Program` Files\Microsoft` Visual` Studio\2022\Community\Common7\Tools\Launch-VsDevShell.ps1
这里要注意的是,需要对命令行中的空格进行转义(escape),方法是使用PowerShell的转义字符(`)。
PowerShell在启动时,会自动执行Microsoft.PowerShell_profile.ps1脚本文件,这样就实现了自动设置C环境的目的。
在PowerShell中,同样可以使用如上创建的批处理命令 cc.bat。
4、设置Visual Studio Code的编译环境
Visual Studio Code(VS Code)是一个轻量级跨平台的代码编辑器,在上述第2步设置的基础上,再编辑一个任务配置文件,就可以在VS Code中编辑、编译C代码。
点击菜单栏上的 Terminal,再点击 Configure Tasks...,就打开了 tasks.json 文件,如图3所示。
图3 配置任务
一个tasks.json的样本如下: