今天在vscode运行完代码之后显示出错,但是把代码复制到devc++又可以正常运行,那就只能是vscode出问题了。
显示以下报错:cmd /c chcp 65001>nul && D:\mingw64\bin\gcc.exe -fdiagnostics-color=always -g "E:\vscode\test\Data Struct\su she.cpp" -o "E:\vscode\test\Data Struct\su she.exe" C:\Users\ASUS\AppData\Local\Temp\ccITxMsV.o:su she.cpp:(.xdata+0x3c): undefined reference to `__gxx_personality_seh0' collect2.exe: error: ld returned 1 exit status。注意看最后一行,应该是我配置的时候,g++版本太老了。去cmd查看gcc -v,显示版本是8.0.1,这个版本显然过老,官网都升级到13.2.0了。
于是我决定更新一下。当时我跟着教程配置的,我把mingw安装包解压缩到了D:\mingw64这个路径下,于是我先将其路径下的全部删除,再去网上找安装包。
安装配置过的都知道,mingw的官网下载非常鸡肋,所以我找了一个大佬整理的mingw-builds-binaries:MinGW-W64 compiler binaries - GitCode
点开后如图
我选择的以下图片的最后一个,如果浏览器显示不安全不让你下载,可以换个浏览器
下载好之后把解压缩的东西复制到D:\mingw64这个路径下面去,然后再去cmd里面查看版本信息,如图
欧克,然后我们再来运行一下代码,运行成功。
注意!由于mingw的更新,vscode的配置文件c_cpp_properties.json等等大概率也要更新,可参考视频6. 【vscode配置c/c++】VSCode设置CC++的编译选项_哔哩哔哩_bilibili的后半段