疑难杂症之vscode--During startup program exited with code 0xc0000139.--缺失重要文件(杂记)

问题展示

在vscode中,只要用了STL容器,就会出现这样的提示

发现自己的 vscode 不能运行带有部分 stl 库的程序,编译不会报错,运行也不会报错但是也没有结果,调试的话会有下图中报错。拿一个以前的程序做测试,如果没有string或者vector一切正常。

如果没有使用STL容器就一切正常,应该不是vscode配置的问题,而且运行路径也没有中文。

无法定位程序输入点__gxx_personality_sj0于动态链接库。网上搜了半天,应该是这个错误信息困扰了我。

问题在于 libstdc++ -6.dll 动态库在环境变量中存在多个,操作系统运行C/C++程序的时候不知道该用哪个库文件,用 everything 搜一下 libstdc++ -6.dll 就可以发现笔者的电脑中有很多 libstdc++ -6.dll。(极大可能是因为anaconda那一个,在环境变量里面搞鬼)

解决方法:

  1. 在 /Mingw/bin 目录下,找到 libstdc++ -6.dll 文件,将其放到C:\Windows\System32目录下

  1. 使用 g++ -static xxx.cpp 编译并运行。

  1. 在 /Mingw/bin 目录下,找到 libstdc++ -6.dll 文件,将其放到要运行的代码目录下。

  1. 在 PATH 环境变量中除了 mingw 的 libstdc++ -6.dll ,其他的都删掉。

最后我使用了第一种,然后事情就完美解决了

附上一段queue的简单代码作为调试

噢~完美解决,感谢,撒花✿✿✿

记录时间:2023年1月6日

一半油盐以谋生,一半诗意来谋爱。这是今天看到的一句话,加油啊杨咩咩。

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值