cpp黑窗口崩溃,陷入死循环,编译和调试成功而运行出错的思考与初步解决

55 阅读1分钟

关于上一篇的问题,经过反复测试,可能问题是,在运行时,对某块内存管理的不当导致,比如说:对OPTR和OPND在运行时,进入了一块未知的内冲可能相互冲突了。

image.png 可能是缓冲区的一些输入没清除干净

image.png 也可能是,在创建栈、入栈出栈等对内存结点的创建、使用和释放时上一操作还未完全完成,或者出现了一些失败,导致下一操作的使用出现问题,导致内存之间的冲突。

经过测试得到的解决方法是,加入一些cout语句来让程序有所停顿,

image.png

以及getchar(); 语句清除回车等缓冲区的输入,防止影响后续的输入。

image.png