背景
想要在vscode中使用code runner来运行c++代码。 电脑已经安装了c++编译器,vscode中也安装了C/C++ 和 Code Runner这两个插件

问题描述
在 Run Code时,编译器生成了一个没有后缀的文件,而不是exe文件,从而无法运行程序。
文件管理器下看到是这样的

原因分析:
通过分析之后发现是编译的命令不对
原来的命令:
cd "f:\C++Code\wangdao\" ; if ($?) { g++ 2.2--1.cpp -o 2.2--1 } ; if ($?) { .\2.2--1 }
正确的命令:
cd "f:\C++Code\wangdao\" ; if ($?) { g++ 2.2--1.cpp -o 2.2--1.exe } ; if ($?) { .\2.2--1.exe }
解决方案:
- 打开vscode的设置,在搜索框输入
Code-runner: Executor Map,打开settings.json文件


对cpp那一行进行修改,修改内容:
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt.exe && $dir$fileNameWithoutExt.exe",
接下来重新Run Code就搞定了。
比较一下两条指令的区别
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt.exe && $dir$fileNameWithoutExt.exe",
总结
- 其实这个问题还是困扰了我很久,一开始寻找问题的方向就不对,在网上搜索了很多内容还是没有找到相似的案例。有时候,自己主动去分析问题,或许也能够找到解决问题的关键所在呢,毕竟在分析的过程中,自己解决问题的这种思维能力也在培养。
- 其实我也不清楚为什么我安装的插件Code Runner配置的cpp编译指令是这样的?这条指令好像在linux下可以执行(暂时还没有去验证),但是在windows下看来是不行的。

解决VSCode CodeRunner运行C++代码生成无后缀文件问题
本文记录了在Visual Studio Code (VSCode) 中使用CodeRunner插件运行C++代码时遇到的问题:编译器生成的不是.exe文件导致无法运行。作者发现原配置命令在Windows环境下不适用,通过分析并修改CodeRunner的ExecutorMap设置,将命令改为生成.exe文件,成功解决了问题。这个过程强调了解决问题的重要性以及自我分析的能力。
652

被折叠的 条评论
为什么被折叠?



