我的程序完全这个:
#include <iostream>
int main()
{
int a;
std::cin >> a;
}
只有在我使用gdb调试器时它才会崩溃(SEGFAULT)。
我正在使用g ++进行编译。
如果有任何用处,这是程序崩溃时的反汇编输出。
->->post-prompt
eax 0x474e5089 1196314761
ecx 0x1 1
edx 0x22fea24 36694564
ebx 0x74ca2fe8 1959407592
esp 0x41afe4c 0x41afe4c
ebp 0x41afe5c 0x41afe5c
esi 0x4e8ffd 5148669
edi 0x0 0
eip 0x74b11a37 0x74b11a37
eflags 0x10202 [ IF RF ]
cs 0x23 35
ss 0x2b 43
ds 0x2b 43
es 0x2b 43
fs 0x53 83
gs 0x2b 43
非常感谢任何帮助。
编辑:这是通过命令行调用时的调试器输出:
[New Thread 180.0x8e4]
[New Thread 180.0x1a40]
[New Thread 180.0x1bb4]
[New Thread 180.0x19a0]
[New Thread 180.0x1630]
[New Thread 180.0xc28]
[New Thread 180.0x788]
[New Thread 180.0x5f8]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 180.0x5f8]
0x74b11a37 in ?? ()
(gdb) Exception condition detected on fd 0
error detected on stdin
答案 0 :(得分:0)
最后我修好了!
事实证明它确实是Windows运行时库的东西,所以我做了一个干净的重新安装,现在一切正常!
但是我真的不知道这是怎么回事。