口袋社区-Poke The BBS's Archiver

深红喷火龙 发表于 2008-3-7 19:55

我没辙了…………

TCHAR h[20];
        HDC hdc;
        PAINTSTRUCT ps;
        static int cxclient,cyclient,cxrect,cyrect;
        static int state[5][5];
        int y,x,clkxrect,clkyrect;
        static RECT rect[5][5];
case WM_SIZE:
                cxclient=LOWORD(lParam);
                cyclient=HIWORD(lParam);
                cxrect=cxclient/5;
                cyrect=cyclient/5;
                for(x=0;x<5;x++)
                        for(y=0;y<5;y++)
                        {
                                rect[x][y].top=y*cyrect;
                                rect[x][y].left=x*cxrect;
                                rect[x][y].bottom=(y+1)*cxrect;
                                rect[x][y].right=(x+1)*cyrect;
                                wsprintf(h,TEXT("%d %d %d %d %d %d"),cxrect,cyrect,cxclient,cyclient,x,y);
                                MessageBox(NULL,h,h,0);
                        }
                return 0;

以上是消息循环中的一段;



运行到循环的x=3,y=2之前,一直是很正常的…………
messagebox显示cxrect ,cyrect,cxclient,cyclient 的值分别是 286 173 1430 866
到了x=3 ,y=3之后,就狂飙为865 173 2768 0  












相信我……在别的地方,我绝对没有对这四个变量赋值的语句………………


我没办法了,望大虾们解答

[[i] 本帖最后由 深红喷火龙 于 2008-3-7 08:20 PM 编辑 [/i]]

liuyanghejerry 发表于 2008-3-8 20:13

你可以看看经过以上的计算之后,变量是不是还是开始定义的那个类型。

深红喷火龙 发表于 2008-3-9 13:05

[quote]原帖由 [i]liuyanghejerry[/i] 于 2008-3-8 08:13 PM 发表
你可以看看经过以上的计算之后,变量是不是还是开始定义的那个类型。 [/quote]怎么看……

最美我中文 发表于 2008-3-9 13:15

debug模式呗= =|

深红喷火龙 发表于 2008-3-9 13:24

c++的debug看不懂
我真是太强了……

页: [1]

Powered by Discuz! Archiver 6.1.0F  © 2001-2007 Comsenz Inc.