Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我所有的C++;是否使用0xc0000139退出程序? 我试图教我自己在C++中编程,而AM使用CygWin在Windows上安装G++。在我开始声明字符串变量之前,一切都进展顺利。将字符串文字与cout一起使用不会导致任何问题,但只要我声明一个字符串变量,程序就不会再运行 #include <iostream> #include <string> int main () { std::string mystring = "Test"; std::cout << mystring; return 0; }_C++_Crash_Cygwin - Fatal编程技术网

为什么我所有的C++;是否使用0xc0000139退出程序? 我试图教我自己在C++中编程,而AM使用CygWin在Windows上安装G++。在我开始声明字符串变量之前,一切都进展顺利。将字符串文字与cout一起使用不会导致任何问题,但只要我声明一个字符串变量,程序就不会再运行 #include <iostream> #include <string> int main () { std::string mystring = "Test"; std::cout << mystring; return 0; }

为什么我所有的C++;是否使用0xc0000139退出程序? 我试图教我自己在C++中编程,而AM使用CygWin在Windows上安装G++。在我开始声明字符串变量之前,一切都进展顺利。将字符串文字与cout一起使用不会导致任何问题,但只要我声明一个字符串变量,程序就不会再运行 #include <iostream> #include <string> int main () { std::string mystring = "Test"; std::cout << mystring; return 0; },c++,crash,cygwin,C++,Crash,Cygwin,从我收集到的信息来看,这是一个DLL的入口点问题,但我可能完全错了 有人知道我做错了什么,或者我错误配置了什么,以及如何修复它吗?我不确定问题到底是什么(如果有人知道我会很感激!),但我能够通过将GCC 5.2.0降级到GCC 4.9.3来解决它。我在混合发布和调试版本时也遇到了同样的问题,使用Windows 10、mingw编译和gcc-8.1.0 我通过清理和重新编译所有内容解决了这个问题: cd ${MY_BUILD} make clean cmake ${MY_SOURCE} -DCMA

从我收集到的信息来看,这是一个DLL的入口点问题,但我可能完全错了


有人知道我做错了什么,或者我错误配置了什么,以及如何修复它吗?

我不确定问题到底是什么(如果有人知道我会很感激!),但我能够通过将GCC 5.2.0降级到GCC 4.9.3来解决它。

我在混合发布和调试版本时也遇到了同样的问题,使用Windows 10、mingw编译和gcc-8.1.0

我通过清理和重新编译所有内容解决了这个问题:

cd ${MY_BUILD}
make clean
cmake ${MY_SOURCE} -DCMAKE_BUILD_TYPE=Debug
make -j4
gdb ./bin/my_program.exe # -> works
./bin/my_program.exe # -> no more problem

您的代码编译良好,并使用GCC4.8.1在Windows 10上为我提供了预期的输出“Test”。您是否遇到了与其他C++程序相同的问题,或者与您提供的代码有任何关系?另外,您使用哪些编译器标志来编译代码?我没有过多地使用它,但我可以让其他代码进行编译。声明字符串变量似乎是导致问题的原因。我没有尝试过声明任何其他类的变量,所以我不确定这是字符串还是类的问题。我正在使用随Cygwin安装程序下载的Win10上的GCC 5.2.0-1。我不确定我使用了什么标志,很可能是默认的。我用g++-g string.cpp-o string.exeI编译了它。我将安装的GCC版本更改为4.9.3,我的程序现在可以正常编译和运行了。真奇怪……您可能已经更新了GCC,但将库保留在4.9版。有些东西,它们是独立的包。二进制兼容性很脆弱。您可以使用Dependency Walker()之类的工具来诊断缺少DLL的问题。
cd ${MY_BUILD}
make clean
cmake ${MY_SOURCE} -DCMAKE_BUILD_TYPE=Debug
make -j4
gdb ./bin/my_program.exe # -> works
./bin/my_program.exe # -> no more problem