VS Code中用C/C++ Compile Run运行单个.cpp文件时十分正常能弹出cmd窗口,但是配成多文件编译成功后的情况下(用VS Code自带的终端运行成功的情况)就会报错定义在另一个.cpp中的文件未定义,并且没有打开窗口的情况下也会报错说打开了多个窗口,而且原本正常的中文字符串也会变成乱码,十分奇怪。
如何让C/C++ Compile Run插实现多文本编译?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注 不知道你这个问题是否已经解决, 如果还没有解决的话:- 以下回答来自chatgpt:
回答:
首先,解决cmd窗口中文乱码的问题需要将cmd的字符编码改为UTF-8,并且在编译时使用该编码。这可以通过在cmd窗口中输入以下命令实现:
chcp 65001
在编译时,可以在调用gcc或g++的时候添加参数“-finput-charset=UTF-8”表示输入文件的编码为UTF-8,同时添加参数“-fexec-charset=UTF-8”表示输出文件的编码为UTF-8。具体来说,可以将以下代码添加到settings.json中以实现该功能:
"c-cpp-compile-run.compileCommand": "gcc -finput-charset=UTF-8 -fexec-charset=UTF-8 -Wall -g ${file} -o ${fileDirname}\\${fileBasenameNoExtension}",
其次,避免在没有打开cmd窗口的情况下出现错误需要将C/C++ Compile Run插件的配置项更改为“terminal”模式,即在VS Code中内置的终端窗口中进行编译。可以将以下代码添加到settings.json中以实现该功能:
"c-cpp-compile-run.defaultCompileCommand": "g++ -o ${fileDirname}\\${fileBasenameNoExtension} ${file} && ${fileDirname}\\${fileBasenameNoExtension}",
最后,实现多文本编译需要使用Makefile或CMake等工具,将所有源文件链接在一起进行编译。可以根据具体的项目需求进行选择。由于该问题并未提供具体的项目代码,无法提供更准确的示例。
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决评论 打赏 举报无用 1- 以下回答来自chatgpt:
悬赏问题
- ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
- ¥15 C语言使用vscode编码错误
- ¥15 用KSV5转成本时,如何不生成那笔中间凭证
- ¥20 ensp怎么配置让PC1和PC2通讯上
- ¥50 有没有适合匹配类似图中的运动规律的图像处理算法
- ¥15 dnat基础问题,本机发出,别人返回的包,不能命中
- ¥15 请各位帮我看看是哪里出了问题
- ¥15 vs2019的js智能提示
- ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
- ¥15 uniapp的h5项目写一个抽奖动画