c/c++语言开发共享# VsCode 配置C++调试运行

VsCode 配置C++调试运行 + 打开命令面板快捷键为F1,软件上写的Ctrl+Shift+P似乎没用 先安装插件使得可以运行 + 先自行在vsc扩展中搜索C++安装 插件 + 再参考 “知乎专栏” 中安装code runner插件使得可以运行,参考这位知乎博客的插件参数配置,代码使用同样是这个 …


vscode 配置c++调试运行

  • 打开命令面板快捷键为f1,软件上写的ctrl+shift+p似乎没用

先安装插件使得可以运行

  • 先自行在vsc扩展中搜索c++安装c/c++插件
  • 再参考中安装code-runner插件使得可以运行,参考这位知乎博客的插件参数配置,代码使用同样是这个人的,他的知乎回答中的代码加上了必备的参数(注意.c和.cpp文件无法使用同一个配置)

一些编译参数比如说,添加编译警告,使得可以支持c++14等等,在这一步中进行,具体操作这位知乎博主有说

配置断点调试环境

  • 参考这位csdn博主配置存放代码文件夹下的.vscode中的launch.jsontasks.json

  • 需要注意的是,在vsc中调试需要在打开的文件夹中进行(注意!是用vsc打开文件夹!!,单独打开一个单独的cpp是没有下面的几个配置文件出现的!!也就是说,这个cpp要在一个文件夹里!不像devcpp和c-free可以直接调试一个单独的cpp!!)

  • vsc不支持路径中含中文的文件调试

  • 条件断点的使用
    # VsCode 配置C++调试运行

  • 特别注意:
    # VsCode 配置C++调试运行

  • vsc打开其他文件时,中文显示乱码,一劳永逸解决方案:打开vsc,文件-首选项-设置-搜素files.autoguessencoding": flase改为files.autoguessencoding": true

  • vsc终端打印出现中文乱码,首先我们应该明白,vsc的终端调用的是windows的cmd或者windows powershell,到底是哪个可以通过# VsCode 配置C++调试运行
    先新建一个终端,保证有两个终端以上的时候就可以看到选择默认的shell这个选项,里面可以选择是调用cmd还是powershell,通过chcp命令可以查到这两个终端的默认编码都是936(简体中文默认的gbk编码),可以通过命令chcp 65001(65001 utf-8代码页)临时将编码改成utf-8。不建议直接修改cmd和powershell的默认编码,这会导致国内有些使用gbk编码的软件出现乱码或者不能显示或者莫名其妙的bug,比如有道词典。详情查看下的评论,等一些老软件全部更新成现代unicoded软件的时候就可以更改windows的编码了,具体方法网上很多,这里不再累赘。

  • 最后配上一份我本地的配置代码
launch.json: {       "version": "0.2.0",       "configurations": [           {               "name": "(gdb) launch", // 配置名称,将会在启动配置的下拉菜单中显示               "type": "cppdbg",       // 配置类型,这里只能为cppdbg               "request": "launch",    // 请求配置类型,可以为launch(启动)或attach(附加)               "program": "${workspacefolder}/${filebasenamenoextension}.exe",// 将要进行调试的程序的路径               "args": [],             // 程序调试时传递给程序的命令行参数,一般设为空即可               "stopatentry": false,   // 设为true时程序将暂停在程序入口处,一般设置为false               "cwd": "${workspacefolder}", // 调试程序时的工作目录,一般为${workspacefolder}即代码所在目录               "environment": [],               "externalconsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台               "mimode": "gdb",               "midebuggerpath": "c:/mingw/bin/gdb.exe", // midebugger的路径,注意这里要与mingw的路径对应               "prelaunchtask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc               "setupcommands": [                   {                "description": "enable pretty-printing for gdb",                       "text": "-enable-pretty-printing",                       "ignorefailures": true                   }               ]           }       ]   }   tasks.json { // 有关 tasks.json 格式的文档,请参见     // https://go.microsoft.com/fwlink/?linkid=733558     "version": "2.0.0",     "tasks": [         {             "type": "shell",             "label": "g++",             "command": "c:\mingw\bin\g++.exe",             "args": [                 "-g",                 "${file}",                 "-o",                 "${filedirname}\${filebasenamenoextension}.exe"             ],             "options": {                 "cwd": "c:\mingw\bin"             },             "problemmatcher": [                 "$gcc"             ]         }     ] }
  • 本地用户设置代码
settings.json {     "files.autosavedelay": 500,     "editor.fontsize": 18,     "code-runner.clearpreviousoutput": true,     "code-runner.ignoreselection": true,     "code-runner.preservefocus": false,     "code-runner.runinterminal": true,     "code-runner.respectshebang": false,     "code-runner.saveallfilesbeforerun": true,     "code-runner.savefilebeforerun": true,     "code-runner.executormap": {         "c": "cd $dirwithouttrailingslash && gcc $filename -o $filenamewithoutext.exe -std=c11 -wall -lm && ./$filenamewithoutext.exe",         //"c": "cd $dir && gcc -std=c11 $filename -o $filenamewithoutext && $dir$filenamewithoutext",         //"cpp": "cd $dir && g++ -std=c++1s4 $filename -o $filenamewithoutext && $dir$filenamewithoutext",         "cpp": "cd $dirwithouttrailingslash && g++ $filename -o $filenamewithoutext.exe -std=c++11 -wall -lm && ./$filenamewithoutext.exe",         //"c": "cd $dir && gcc -std=c11 $filename -o $filenamewithoutext && $dir$filenamewithoutext",     },     "files.autosave": "afterdelay",     "files.autoguessencoding": true,     "terminal.integrated.shell.windows": "c:\windows\system32\windowspowershell\v1.0\powershell.exe", }

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/602404.html

(0)
上一篇 2021年5月11日
下一篇 2021年5月11日

精彩推荐