开发环境:win2003 + VS2008 + MFC工程
调用一个自己写的函数 Cut()
断点调试时,
Cut()
{ ------------------->运行到这个大括号时,调试进入了chkstk.asm文件
在chkstk.asm文件内运行到
test dword ptr [eax],eax ; probe page.
这里是个循环,在这句代码执行多次以后报错“Stack overflow”我这个Cut()函数里的代码一句都还没执行}请教是啥问题??
调用一个自己写的函数 Cut()
断点调试时,
Cut()
{ ------------------->运行到这个大括号时,调试进入了chkstk.asm文件
在chkstk.asm文件内运行到
test dword ptr [eax],eax ; probe page.
这里是个循环,在这句代码执行多次以后报错“Stack overflow”我这个Cut()函数里的代码一句都还没执行}请教是啥问题??
我说一下,是这样的
程序刚运行时是好的,然后我移动一下主窗体
此时才报堆栈溢出当然,刚运行时也调用了Cut()
然后移动窗体时也调用了Cut()cut()函数里有
UCHAR imageBuf[704 * 576 * 2];
UCHAR imageBuf[704 * 576 * 2];不溢出才怪...
UCHAR imageBuf[704 * 576 * 2];
-----------------------------
这样,你把这个ImageBuf用New的方式申请到堆上试试。
cut()方法调用一次就够了跟下面这个没关系,我分配的比它大的多都没问题。
UCHAR imageBuf[704 * 576 * 2];