当前位置:   article > 正文

Visual Studio Code安装与C/C++开发调试环境搭建_visual studio code aunch: program 'enter program n

visual studio code aunch: program 'enter program name, for example c;\users

目录

 

简介

VSCode安装

VSCode语言设置

安装开发套件

构建C/C++编译环境

安装Clang

安装MinGW

VSCode工程配置

launch.json

tasks.json

测试


简介

新工作需要切换到Windows下搬砖,得暂时告别我心爱的Vim了,泪奔三分钟。听说Windows下有个地表最强编辑器Visual Studio Code,盘它!

本文介绍了Windows10环境下安装Visual Studio Code(Version 1.42)并搭建C/C++开发调试环境的所有流程。


VSCode安装

VSCode是一款功能强大的免费编译器,同时支持Windows和Linux平台,操作友好功能全面,且原生支持中文界面,太优秀了。

官网下载:https://code.visualstudio.com/

下载安装即可,注意需要勾选“添加到环境变量”选项。


VSCode语言设置

VSCode的默认语言是英文,我们可以将其更改为中文。

按快捷键Ctrl+Shift+P打开命令窗口,搜索>language

之后我们依次选择“Configure Display Language”->“Install additional languages...”->“Install” 

中文(简体)语言包安装完成后按提示重启即可。


安装开发套件

在应用商店中搜索并依次安装C/C++插件,跟安装语言包的方法一样。

推荐安装并启用以下插件:

【C/C++支持】C/C++

【程序运行环境】Code Runner

【自动补齐】C++ Intellisense

【Clang编译环境】C/C++ Clang Command Adapter

【调试工具】Native Debug

【静态检查工具】C/C++ Advanced Lint


构建C/C++编译环境

VSCode只是一个编辑器,本身并不支持编译运行功能。因此我们需要通过插件来配置编译运行环境,本文选用MinGW-W64+Clang环境。

安装Clang

Clang官网下载:http://releases.llvm.org/download.html

这里按电脑配置选择,我选择Pre-Built Binaries: Windows(64bit)(.sig),最终下载LLVM-9.0.0-win64.exe。

下载完成后安装,安装时选择“Add LLVM to the system PATH for all users”。安装完成后可能会提示“MSVC integration install failed”。这是因为Clang默认使用msvc工具链,但我们采用了MinGW,因此无视即可。装完后Win+R打开cmd,运行clang -v观察到以下结果则安装成功。

安装MinGW

MinGW下载:http://www.mingw-w64.org/doku.php/download/mingw-builds

这里给出的是在线安装方式,如果下载了离线安装压缩包的话,选择合适位置解压,将mingw64/bin加入环境变量PATH即可。

先下载mingw-w64安装工具mingw-w64-install.exe,下载完成后直接运行,需要配置以下五个参数,注意别搞错了:

  • Version:指定版本号,从4.9.1-8.1.0,按需选择,没有特殊需求就用最新版本;
  • Architecture:按操作系统来选,64位系统选择x86_64,32位系统选择i686;
  • Threads:设置线程标准,可选posix或win32;
  • Exception:设置异常处理标准,x86_64可选seh或sjlj,i686则为dwarf或sjlj;
  • Build revision:构建版本号,默认只有一个0,如果有多个选最大的即可。

之后一路next安装,装完后Win+R打开cmd,运行gcc -v观察到以下结果则安装成功。

至此VSCode下C/C++运行环境就搭建好了。


VSCode工程配置

系统合适位置创建工程目录,注意路径全部英文且没有空格(例如C:\Users\Administrator\Desktop\test)。

VSCode打开该目录,并在该目录下新建目录.vscode,将以下launch.json和tasks.json文件拷贝到.vscode目录中。

launch.json

  1. {
  2. // 使用 IntelliSense 了解相关属性。
  3. // 悬停以查看现有属性的描述。
  4. // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
  5. "version": "0.2.0",
  6. "configurations": [
  7. {
  8. "name": "gcc.exe build and debug active file", // 配置名称,会显示在启动配置的下拉菜单中
  9. "type": "cppdbg", // 配置类型,这里只能为cppdbg
  10. "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)
  11. "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", // 待调试的可执行程序路径
  12. "args": [], // 程序启动时的传参,按需求填即可
  13. "stopAtEntry": true, // 是否在main入口处打断点,一般选true
  14. "cwd": "${workspaceFolder}", // 调试程序时的工作路径
  15. "environment": [], // 环境变量设置
  16. "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台
  17. "MIMode": "gdb", // 指定调试器,可以为gdb或lldb。但windows下没有预编译好的lldb,还是老老实实gdb吧
  18. "miDebuggerPath": "C:\\TDM-GCC-64\\bin\\gdb.exe", // gdb的调用路径,\\为转义
  19. "setupCommands": [
  20. {
  21. "description": "为 gdb 启用整齐打印",
  22. "text": "-enable-pretty-printing",
  23. "ignoreFailures": false // 调试时是否忽略失败,当然要false
  24. }
  25. ],
  26. "preLaunchTask": "gcc.exe build active file" // 调试开始前要执行的动作,一般为编译文件。此处内容应与tasks.json的taskName一致
  27. }
  28. ]
  29. }

tasks.json

  1. {
  2. "version": "2.0.0",
  3. "tasks": [
  4. {
  5. "label": "gcc.exe build active file", // 任务名称,与launch.json的preLaunchTask相对应
  6. "type": "shell",
  7. "command": "gcc", // 如果用MinGW,编译c用gcc,编译c++用g++
  8. "args": [ // 编译参数
  9. "${file}",
  10. "-o", // 指定输出文件名,不加该参数则默认输出a.exe
  11. "${fileDirname}/${fileBasenameNoExtension}.exe", // 注意这里用/标识目录而不是\\
  12. "-g", // 支持gdb调试
  13. "-Og", // -Og 是在gcc 4.8版本引入的,按照源码自动确定优化等级,基本相当于没有优化
  14. "-Wall", // 开启额外的编译警告
  15. "-static-libgcc", // 静态链接
  16. "-fcolor-diagnostics",
  17. "--target=x86_64-w64-mingw", // tasks.json的默认target为msvc,不加这一条就会找不到头文件
  18. "-std=c11" // c++最新标准为c++1z即c++17,C语言最新标准为c11,可根据需要自行修改
  19. ],
  20. "group": {
  21. "kind": "build",
  22. "isDefault": true // 设为false则可做到一个tasks.json配置多个编译指令
  23. },
  24. "presentation": {
  25. "echo": true,
  26. "reveal": "always", // 设置是否在“终端”中显示编译信息,可以为always,silent,never。没说的,always。
  27. "focus": false,
  28. "panel": "shared" // 不同的文件的编译信息共享一个终端面板
  29. },
  30. "problemMatcher": { // 编译错误输出配置
  31. "owner": "cpp",
  32. "fileLocation": [
  33. "relative",
  34. "/"
  35. ],
  36. "pattern": {
  37. "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", // 正则表达式,用于描述在“问题”栏中显示的信息。
  38. "file": 1,
  39. "line": 2,
  40. "column": 3,
  41. "severity": 4,
  42. "message": 5
  43. }
  44. }
  45. }
  46. ]
  47. }

测试

在test目录下创建test.c测试文件。

  1. #include <stdio.h>
  2. int main(int argc, char const *argv[])
  3. {
  4. /* code */
  5. printf("Hello world \n");
  6. return 0;
  7. }

Ctrl+Alt+n运行,或在main()文件源码处鼠标右键选择Run Code运行程序,完结撒花~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/214402
推荐阅读
相关标签
  

闽ICP备14008679号