gpt4 book ai didi

c++ - 在启动过程中程序以代码 0xc0000139 退出

转载 作者:太空狗 更新时间:2023-10-29 23:13:04 25 4
gpt4 key购买 nike

<分区>

更新:

这原来是一个编译器问题(我使用的是 MinGW)所以解决方法是切换到另一个编译器(在本例中是 Cygwin).


(原始)问题

我是一名开始自学 C++ 的学生,在尝试使用 string 时遇到问题

这是我的测试代码(不起作用的那个)

#include <iostream>
#include <string>

using namespace std;

int main()
{
string myString;

cin >> myString;
cout << myString;

return(0);
}

当我尝试运行它时,程序刚刚结束并退出在我可以输入任何内容之前,这是我尝试从gdb运行时的结果

(gdb) run
Starting program: C:\Users\DANIEL~1\AppData\Local\Temp\sandbox.exe
[New Thread 15036.0x31bc]
[New Thread 15036.0x2db4]
[New Thread 15036.0x2628]
[New Thread 15036.0x2280]
During startup program exited with code 0xc0000139.
(gdb)

当我尝试制作文件并从 cmd 运行它时

g++ sandbox_string.cpp -o sandbox_string

(我加了_string和_int makefile分开,程序还是一样)

我遇到了这个错误: Entry point not found

在谷歌一圈之后,我认为这个问题与缺少 DLL 有关。我怎么知道我缺少什么 dll,有没有办法确保我拥有所有 dll?

有几点我想提一下:

• 我承认这可能与Why are all my C++ programs exiting with 0xc0000139? 重复,但是除了降级 GCC 之外没有提供任何解决方案。我试过了,但没有用。同样在那个问题中,有人提到了缺少 DLL,但没有提供进一步的解决方案。

• 如果我尝试cin例如一个整数:

#include <iostream>
#include <string>

using namespace std;

int main()
{
int myString;
cin >> myString;
cout << myString;
return(0);
}

它工作正常,我可以输入,程序会输出然后正常退出:

(gdb) run
Starting program: C:\Users\DANIEL~1\AppData\Local\Temp\sandbox.exe
[New Thread 9120.0x35ac]
[New Thread 9120.0x2c4c]
[New Thread 9120.0x390c]
[New Thread 9120.0x32c0]
7
7[Inferior 1 (process 9120) exited normally]
(gdb)

• 我的编译器是 MinGW,这是我的 MinGW 安装程序屏幕截图(希望)包含您需要的所有详细信息 MinGW Installer

• 我正在使用 Atom - 一种文本编辑器,带有用于编译和运行 C++ 代码的插件(称为“gpp-compiler”),因为我发现坚持使用一个文本编辑器会很舒服使用 IDE,但是,如果您认为我应该使用其他东西,请告诉我。

• 我不是编程新手,但我是 C++ 的(非常)新手,所以如果有任何愚蠢的错误请原谅我,这也意味着我非常喜欢尽可能简单的答案/解决方案 。但是我对伴随着适当解释的复杂答案没有问题。

谢谢

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com