为何如此奇怪?

小白在此 2014-10-04 08:59:22
我在用win32写俄罗斯方块,但rectangle函数给我带来了无穷的困扰,实在是没办法了下面上图

其中我通过(*Cur_fangkuai)[i]的真假判断是否执行Rectangle,但执行后为什么Cur_fangkuai指向的数组内容会发生变化?
以下是执行函数Rectangle后的结果

请问有人碰到过这种情况吗?
...全文
124 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
小白在此 2014-10-05
  • 打赏
  • 举报
回复
我用汇编跟进去发现是在gdi32.dll中最后清理堆栈的时候给我改变的,怎么会这么奇怪?
小白在此 2014-10-05
  • 打赏
  • 举报
回复
引用 2 楼 relaxisland 的回复:
确定是 rectangle之后吗? 不是clientrect赋值之后? 这种情况,一般是操作某个变量的时候内存越界了, 把它给覆盖了吧
确定是函数调用之后
小白在此 2014-10-05
  • 打赏
  • 举报
回复
引用 4 楼 super_admi 的回复:
搞游戏,还是面向对象的好。
问题是所谓的如何面向对象我也只是懂C++基本语法,思想真的是一点不懂,有什么推荐的好方法吗?
阿麦 2014-10-04
  • 打赏
  • 举报
回复
数据变了,要么是你有意改的,要么是无意中改的。 无意中改的,最常出现的是指针越界,这种情况很让人头痛。
super_admi 2014-10-04
  • 打赏
  • 举报
回复
搞游戏,还是面向对象的好。
707wk 2014-10-04
  • 打赏
  • 举报
回复
围观。。。。
relaxisland 2014-10-04
  • 打赏
  • 举报
回复
确定是 rectangle之后吗? 不是clientrect赋值之后? 这种情况,一般是操作某个变量的时候内存越界了, 把它给覆盖了吧
小白在此 2014-10-04
  • 打赏
  • 举报
回复
执行之前的图片是这样的

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧