gpt4 book ai didi

c++ - 在 visual studio 2010 c++ 中调试时出现奇怪的异常

转载 作者:行者123 更新时间:2023-11-28 00:33:10 24 4
gpt4 key购买 nike

我在尝试调试我的程序时遇到此错误。似乎它甚至不能接收我传递给 main 函数的参数:

int main(int argc, char* argv[]){
if(argc!=4) std::cout<<wrong input";
else{
//other codes
}
return 0;
}

我将断点放在第一行(主函数行),它给了我以下错误:

'MESH.exe': Loaded 'C:\Users\Avan\Documents\NUS\Yr3_Sem2\CS3242\MESH\Debug\MESH.exe',       Symbols loaded.
'MESH.exe': Loaded 'C:\Windows\SysWOW64\ntdll.dll', Symbols loaded (source information stripped).
'MESH.exe': Loaded 'C:\Windows\SysWOW64\kernel32.dll', Symbols loaded (source information stripped).
'MESH.exe': Loaded 'C:\Windows\SysWOW64\KernelBase.dll', Symbols loaded (source information stripped).
'MESH.exe': Loaded 'C:\Windows\SysWOW64\msvcp100d.dll', Symbols loaded (source information stripped).
'MESH.exe': Loaded 'C:\Windows\SysWOW64\msvcr100d.dll', Symbols loaded (source information stripped).
First-chance exception at 0x00318c67 in MESH.exe: 0xC00000FD: Stack overflow.
Unhandled exception at 0x00318c67 in MESH.exe: 0xC00000FD: Stack overflow.
First-chance exception at 0x00318c67 in MESH.exe: 0xC0000005: Access violation reading location 0x003a0000.
Unhandled exception at 0x00318c67 in MESH.exe: 0xC0000005: Access violation reading location 0x003a0000.
The program '[4800] MESH.exe: Native' has exited with code -1073741819 (0xc0000005).

所以我假设错误来自于我向下传递输入。我在project->properties->debugging

中设置了命令行输入参数

错误一直指向一个 chkstk.asm 文件,我不知道它是什么。

; Find next lower page and probe
cs20:
sub eax, _PAGESIZE_ ; decrease by PAGESIZE
**test dword ptr [eax],eax ; probe page.**
jmp short cs10

_chkstk endp

end

指针一直指向上面标有**的那条线。谁能告诉我哪里出了问题?

最佳答案

好吧,鉴于它提示堆栈溢出,我要查看的第一事情是您是否试图在堆栈上分配大量内容。

例如,如果您的//other codes 包含如下内容:

int bigarray[9999999999];

那么这很可能是罪魁祸首。

我不会太担心错误来自 chkstk.asm 的事实,这几乎可以肯定是一些防御性代码,它正在检查你是否已经炸毁了堆栈(因此 chkstk 用于 check stack) 并生成第一次机会异常。

关于c++ - 在 visual studio 2010 c++ 中调试时出现奇怪的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22067989/

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