Eva*_* G. 3 c++ visual-studio-code
我对 VS code 完全是个新手,而且我只用 C++ 编码了大约一个月。我尝试了这个简单的程序来确保设置正确:
#include <iostream>
#include <vector>
using namespace std;
int main() {
cout << "Hello world" << endl;
vector<int> v;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
运行可执行文件时没有显示任何内容。删除向量声明会使程序正常运行。
我确实发现它在声明字符串时遇到了类似的问题,并且解决方案(使用 -static-libstdc++ 进行静态链接)对我有用,尽管提供解决方案的作者也不完全确定它为什么有效。
然而,由于我是菜鸟,所以我不太明白为什么静态链接解决了我的问题,即使在读完这篇文章之后,我也担心提到的一些缺点(如果绝对必须的话,建议仅静态链接,因为缺点超过优势),所以我想知道除了静态链接之外是否还有其他解决方案。
编辑:澄清 - 程序的输出现在正常显示在终端中,但在输出窗口中,仍然出现相同的退出代码。
小智 5
如下所示配置 VSCode“VS Code C++:退出代码 = 3221225785”
安装 Visual Studio Code 的 Code Runner 扩展。
打开设置(Seetings.json)。
在搜索栏中搜索“code-runner.executorMap”。
调整
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
Run Code Online (Sandbox Code Playgroud)
到
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt -static && $dir$fileNameWithoutExt",
Run Code Online (Sandbox Code Playgroud)
之后,右键单击源代码文件,选择“运行代码”选项。
对于调试:
在tasks.json文件的“args”中添加一个额外的参数“-static”。
前:
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
Run Code Online (Sandbox Code Playgroud)
后:
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"-static"
],
Run Code Online (Sandbox Code Playgroud)
“-static”是编译运行时的静态链接参数。
| 归档时间: |
|
| 查看次数: |
8247 次 |
| 最近记录: |