欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Windows 下 VS code 中 Code Runner 无法输入 & 中文乱码 & 编译报错 等问题解决

程序员文章站 2022-06-15 11:53:59
无法输入在 Visual Studio Code 中安装 Code Runner 插件后,运行c++程序无法输入,是因为默认使用的不是终端,添加code-runner.runInTerminal为true即可中文乱码如果cpp文件是utf-8文件,使用终端输出中文默认会出现乱码,修改code-runner.executorMap 加入-fexec-charset=GBK 即可路径报错提示找不到路径,报错如下:g++: error: xxx.cpp: No such file or directo...

无法输入

在 Visual Studio Code 中安装 Code Runner 插件后,运行c++程序无法输入,是因为默认使用的不是终端,添加code-runner.runInTerminal为true即可

中文乱码

如果cpp文件是utf-8文件,使用终端输出中文默认会出现乱码,修改code-runner.executorMap 加入-fexec-charset=GBK 即可

路径报错

提示找不到路径,报错如下:

g++: error: xxx.cpp: No such file or directory
g++: fatal error: no input files
compilation terminated.

一般打开的文件夹是不会报这个错的,打开单个文件的时候,终端默认路径是在c盘,而打开的文件不在c盘时会报错,因为windows使用cd是无法切换盘符的,所以需要在code-runner.executorMap中加入切换盘符的命令。
另外如果文件名中有空格的话也会报错,所以需要使用 \" 把文件名包含起来。路径使用$dir自带 "。

完整设置

打开 首选项 - 设置,在用户设置中加入
或者"crtl+shift+p",输入"settings.json", 在settings.json文件中加入

    "code-runner.runInTerminal":true,
    "code-runner.executorMap": {
        "cpp": "$driveLetter && cd $dir && g++ -std=c++11 -fexec-charset=GBK \"$fileName\" -o \"$fileNameWithoutExt.exe\" && \"$fileNameWithoutExt.exe\"",
        "c": "$driveLetter && cd $dir && gcc -fexec-charset=GBK \"$fileName\" -o \"$fileNameWithoutExt.exe\" && \"$fileNameWithoutExt.exe\""
    }

路径说明

  • $ workspaceRoot:在VS Code中打开的文件夹的路径
  • $ dir:正在运行的代码文件的目录
  • $ dirWithoutTrailingSlash:运行的代码文件目录不带斜杠
  • $ fullFileName:正在运行的代码文件的全名
  • $ fileName:正在运行的代码文件的基本名称,即没有目录的文件
  • $ fileNameWithoutExt:代码文件的基本名称,不带扩展名
  • $ driveLetter:正在运行的代码文件的驱动器号(仅Windows)
  • $ pythonPath:Python解释器的路径(由Python: Select Interpreter命令设置)

本文地址:https://blog.csdn.net/qq331568993/article/details/107631586

相关标签: c++