<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>william的网络技术笔记</title><link>http://yltto.cn/</link><description></description><generator>RainbowSoft Studio Z-Blog 2.3 Avengers Build 180518</generator><language>zh-CN</language><pubDate>Tue, 16 Jul 2024 23:18:25 +0800</pubDate><item><title>C++实现推箱子游戏</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/14.html</link><pubDate>Tue, 16 Jul 2024 01:36:21 +0800</pubDate><guid>http://yltto.cn/post/14.html</guid><description><![CDATA[<p>代码如下：</p><pre class="brush:cpp;toolbar:false">#pragma&nbsp;once
class&nbsp;K&nbsp;{&nbsp;&nbsp;//抽象化机器人K
//地图大小
#define&nbsp;cx&nbsp;10&nbsp;&nbsp;&nbsp;
#define&nbsp;cy&nbsp;10
#define&nbsp;wall1&nbsp;0xA8&nbsp;&nbsp;&nbsp;//▓占2个字节&nbsp;WINDOWS下
#define&nbsp;wall2&nbsp;0x88&nbsp;&nbsp;&nbsp;//
//为K定义方向，方向符号请无视。
public:
enum&nbsp;FX&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;=&nbsp;&#39;&gt;&#39;,&nbsp;//朝右Y
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;z&nbsp;=&nbsp;&#39;&lt;&#39;,&nbsp;//左&nbsp;-Y
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s&nbsp;=&nbsp;&#39;^&#39;,&nbsp;//上&nbsp;-X
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;=&nbsp;&#39;V&#39;&nbsp;&nbsp;//下&nbsp;&nbsp;X
};

protected:
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;map[cx][cy];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//0&nbsp;代表平地可活动；
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//1&nbsp;表示墙
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//2&nbsp;表示箱子
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//3&nbsp;箱子的归属&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;bakmap[cx][cy];&nbsp;&nbsp;&nbsp;//做一个备用地图
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;ix,iy;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//机器人现在的坐标（iy行，第ix列）
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;fx;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//机器人现在的方向

private:
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;gotoxy(int&nbsp;x,int&nbsp;y){&nbsp;&nbsp;&nbsp;&nbsp;//移动当前的IX,IY的坐标
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ix=x;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iy=y;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;showmap();
&nbsp;&nbsp;&nbsp;&nbsp;}

public:&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;K(int&nbsp;tx,int&nbsp;ty,int&nbsp;ifx){&nbsp;&nbsp;&nbsp;&nbsp;//类构造函数
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loadmap();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//机器人K的初使化位置与方向
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ix=tx;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iy=ty;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fx=ifx;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;showmap();
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;setfx(int&nbsp;sfx){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//设置机器人朝向
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fx=sfx;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;showmap();
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;move(int&nbsp;bstep=1)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//向前走，默认一格&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwallinface())&nbsp;return;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bboxinface())&nbsp;{&nbsp;handbox();&nbsp;return;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(fx==FX::z)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iy-=bstep;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gotoxy(ix,&nbsp;iy);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else&nbsp;if&nbsp;(fx==FX::y)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iy+=bstep;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gotoxy(ix,&nbsp;iy);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else&nbsp;if&nbsp;(fx==FX::s){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ix-=bstep;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gotoxy(ix,iy);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else&nbsp;if&nbsp;(fx==FX::x){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ix+=bstep;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gotoxy(ix,&nbsp;iy);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;}
private:
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;handbox()&nbsp;&nbsp;//推箱子
&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwallinface2())&nbsp;return;&nbsp;&nbsp;&nbsp;//箱子前面被墙挡了
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(fx==FX::z)&nbsp;{&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bakmap[ix][iy-1]==3)&nbsp;&nbsp;//如果我们移开的地方，在备用地图上是3（家）则恢复到新地图，其它情况无视
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix][iy-1]=bakmap[ix][iy-1];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix][iy-1]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix][iy-2]=2;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else&nbsp;if&nbsp;(fx==FX::y)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bakmap[ix][iy+1]==3)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix][iy+1]=bakmap[ix][iy+1];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix][iy+1]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix][iy+2]=2;
&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else&nbsp;if&nbsp;(fx==FX::s){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bakmap[ix-1][iy]==3)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix-1][iy]=bakmap[ix-1][iy];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix-1][iy]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix-2][iy]=2;
&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else&nbsp;if&nbsp;(fx==FX::x){&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bakmap[ix+1][iy]==3)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix+1][iy]=bakmap[ix+1][iy];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix+1][iy]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[ix+2][iy]=2;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;move();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bcheckwin())&nbsp;&nbsp;&nbsp;//赢了...地图格式like&nbsp;this，1是墙，2是箱，3是放箱子的。下面这样就行
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/*
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00000000
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;01221000
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;01331000
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;01111000
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;恭喜你，你赢了！&quot;);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;bwall(int&nbsp;wb,int&nbsp;step=1,int&nbsp;bj=0){&nbsp;&nbsp;//检测前面的物品wb,step步数，bj离墙距离
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;bw=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(fx==FX::z&nbsp;&amp;&amp;&nbsp;(iy-bj&lt;=0&nbsp;||&nbsp;map[ix][iy-step]==wb))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bw&nbsp;+=&nbsp;&nbsp;1;&nbsp;&nbsp;&nbsp;//1左有
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(fx==FX::y&nbsp;&amp;&amp;&nbsp;(iy&gt;=cy-step&nbsp;||&nbsp;map[ix][iy+step]==wb))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bw&nbsp;+=&nbsp;10;&nbsp;&nbsp;//10&nbsp;右有&nbsp;11&nbsp;左右都有
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(fx==FX::s&nbsp;&amp;&amp;&nbsp;(ix-bj&lt;=0&nbsp;||&nbsp;map[ix-step][iy]==wb))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bw&nbsp;+=&nbsp;100;&nbsp;//101&nbsp;左上有&nbsp;110&nbsp;右上有&nbsp;111左右上
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(fx==FX::x&nbsp;&amp;&amp;&nbsp;(ix&gt;=cx-step&nbsp;||&nbsp;map[ix+step][iy]==wb))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bw&nbsp;+=&nbsp;1000;&nbsp;//1001&nbsp;左和下&nbsp;1010&nbsp;右和下&nbsp;1011&nbsp;右下左&nbsp;1111&nbsp;被包围
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;bw;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;bwallinface2(){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//检测箱子前面有墙或箱子吗
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;switch&nbsp;(fx)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::z:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1,2,1)==1&nbsp;||&nbsp;bwall(2,2,1)==1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::s:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1,2,1)==100&nbsp;||&nbsp;bwall(2,2,1)==100)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::y:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1,2,1)==10&nbsp;||bwall(2,2,1)==10)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::x:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1,2,1)==1000&nbsp;||&nbsp;bwall(2,2,1)==1000)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;false;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;bboxinface(){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//面前有箱子吗
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;switch&nbsp;(fx)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::z:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(2)==1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::s:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(2)==100)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::y:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(2)==10)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::x:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(2)==1000)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;false;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;bool&nbsp;bcheckwin(){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//查检胜利条件，没有空家了（全被塞进箱子了。。）
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;count=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i=0;i&lt;cy;i++)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j=0;j&lt;cx;j++)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(map[i][j]==3)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count++;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(count&gt;=1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;false;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;bwallinface()&nbsp;&nbsp;&nbsp;&nbsp;//检测面前有墙吗
&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;switch&nbsp;(fx)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::z:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1)==1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::s:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1)==100)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::y:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1)==10)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;FX::x:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(bwall(1)==1000)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;true;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;false;
&nbsp;&nbsp;&nbsp;&nbsp;}


&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;loadmap(){&nbsp;&nbsp;&nbsp;//手工地图，下一个版本可以改关卡文件
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//map[x][y]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[0][0]=0;map[0][1]=0;map[0][2]=0;map[0][3]=0;map[0][4]=0;map[0][5]=1;map[0][6]=0;map[0][7]=0;map[0][8]=0;map[0][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[1][0]=0;map[1][1]=1;map[1][2]=1;map[1][3]=0;map[1][4]=0;map[1][5]=1;map[1][6]=0;map[1][7]=0;map[1][8]=0;map[1][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[2][0]=0;map[2][1]=0;map[2][2]=0;map[2][3]=0;map[2][4]=0;map[2][5]=1;map[2][6]=0;map[2][7]=0;map[2][8]=0;map[2][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[3][0]=0;map[3][1]=0;map[3][2]=2;map[3][3]=0;map[3][4]=0;map[3][5]=0;map[3][6]=0;map[3][7]=2;map[3][8]=0;map[3][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[4][0]=0;map[4][1]=0;map[4][2]=2;map[4][3]=0;map[4][4]=0;map[4][5]=0;map[4][6]=0;map[4][7]=0;map[4][8]=0;map[4][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[5][0]=1;map[5][1]=1;map[5][2]=0;map[5][3]=1;map[5][4]=0;map[5][5]=0;map[5][6]=0;map[5][7]=0;map[5][8]=0;map[5][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[6][0]=0;map[6][1]=0;map[6][2]=0;map[6][3]=0;map[6][4]=1;map[6][5]=0;map[6][6]=1;map[6][7]=0;map[6][8]=0;map[6][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[7][0]=0;map[7][1]=0;map[7][2]=3;map[7][3]=0;map[7][4]=0;map[7][5]=0;map[7][6]=0;map[7][7]=1;map[7][8]=0;map[7][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[8][0]=0;map[8][1]=0;map[8][2]=3;map[8][3]=3;map[8][4]=0;map[8][5]=0;map[8][6]=0;map[8][7]=1;map[8][8]=0;map[8][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map[9][0]=0;map[9][1]=0;map[9][2]=0;map[9][3]=0;map[9][4]=0;map[9][5]=0;map[9][6]=0;map[9][7]=1;map[9][8]=0;map[9][9]=0;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i=0;i&lt;cx;i++)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j=0;j&lt;cy;j++)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bakmap[i][j]=map[i][j];
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;printawall(bool&nbsp;breturn=false)&nbsp;//画一个墙
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!breturn)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;%c%c&quot;,wall1,wall2);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;%c%c\n&quot;,wall1,wall2);
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;printwall()&nbsp;&nbsp;&nbsp;//画一行墙
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i=0;i&lt;cy+2;i++)&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printawall();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;\n&quot;);
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;printbox()&nbsp;&nbsp;//画箱子
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;%c%c&quot;,0xA1,0xF6);
&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;printdot()&nbsp;&nbsp;//画个点代表家
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;%c%c&quot;,0xA1,0xA4);
&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;showmap(){&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//show&nbsp;map显示地图
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;system(&quot;cls&quot;);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//清屏
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printwall();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//打印一行墙
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i=0;&nbsp;i&lt;cx;&nbsp;i++)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printawall();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;j=0;&nbsp;j&lt;cy;&nbsp;j++)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(i==ix&nbsp;&amp;&amp;&nbsp;j==iy)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;%c%c&quot;,1,2);&nbsp;//fx);&nbsp;&nbsp;//精灵
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printmap(map[i][j]);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printawall(true);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printwall();
&nbsp;&nbsp;&nbsp;&nbsp;}


&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;printmap(int&nbsp;numb)&nbsp;&nbsp;//打印物品
&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;switch&nbsp;(numb)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;1:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printawall();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;2:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printbox();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;3:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printdot();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default:&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;%c&quot;,numb);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;}
};</pre><pre class="brush:cpp;toolbar:false">//&nbsp;testjk.cpp&nbsp;:&nbsp;定义控制台应用程序的入口点。
//

#include&nbsp;&quot;stdafx.h&quot;

#include&nbsp;&lt;stdlib.h&gt;
#include&nbsp;&lt;conio.h&gt;
#include&nbsp;&lt;windows.h&gt;


&nbsp;

#include&nbsp;&quot;k.h&quot;


#define&nbsp;RIGHT&nbsp;&nbsp;77
#define&nbsp;LEFT&nbsp;&nbsp;&nbsp;75
#define&nbsp;UP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;72
#define&nbsp;DOWN&nbsp;&nbsp;&nbsp;80
#define&nbsp;REST&nbsp;&nbsp;&nbsp;114




void&nbsp;main&nbsp;()
{
reset:
&nbsp;&nbsp;&nbsp;&nbsp;K&nbsp;k001(0,0,K::FX::y);&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;key&nbsp;=0;
&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(1)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;if(kbhit())
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;key=getch();
&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(key!=0&nbsp;&amp;&amp;&nbsp;key!=224){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;switch(key){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;RIGHT:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.setfx&nbsp;(K::FX::y);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.move&nbsp;();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;UP:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.setfx&nbsp;(K::FX::s);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.move&nbsp;();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;LEFT:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.setfx&nbsp;(K::FX::z);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.move&nbsp;();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;DOWN:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.setfx&nbsp;(K::FX::x);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k001.move&nbsp;();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;REST:&nbsp;&nbsp;//r键复位
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;reset;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;key=0;
&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;
}</pre><p><br/></p><!--autointro-->]]></description><category>软件开发</category><comments>http://yltto.cn/post/14.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=14</wfw:commentRss></item><item><title>C++ TrayIcon类</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/13.html</link><pubDate>Tue, 16 Jul 2024 01:35:23 +0800</pubDate><guid>http://yltto.cn/post/13.html</guid><description><![CDATA[代码如下：
<pre class="brush:cpp;toolbar:false">#pragma once
/*////////////////////////////////////////////////////////////////
 
28/11/2006 william 

/////////////////////////////////////////////////////////////////*/
class ShellIcon
{
BOOL m_bAdd;
private:
NOTIFYICONDATA lpData;

public:
ShellIcon(LPCTSTR szToolTip, HWND hwnd, UINT uCallbackMessage)
{
lpData.cbSize =sizeof(NOTIFYICONDATA);
lpData.hWnd = hwnd;
lpData.uCallbackMessage = uCallbackMessage;
lpData.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
lpData.hIcon = AfxGetApp()-&gt;LoadIcon (MAKEINTRESOURCE(IDR_MAINFRAME));
_tcscpy(lpData.szTip, szToolTip);
}
~ShellIcon()
{
RemoveIconFromTray();
}
public:
BOOL AddIconToTray();
BOOL RemoveIconFromTray();
BOOL ChangeIcon(HICON hico);
BOOL HideIcon();
BOOL ShowIcon();
BOOL SetToolTip(LPCTSTR lpToolTip);
BOOL IsIconAlreayExist();
};
BOOL ShellIcon::IsIconAlreayExist()
{
return m_bAdd;
}
BOOL ShellIcon::AddIconToTray ()
{
m_bAdd = TRUE;
return Shell_NotifyIcon(NIM_ADD, &amp;lpData);
}
BOOL ShellIcon::RemoveIconFromTray ()
{
m_bAdd = FALSE;
return Shell_NotifyIcon(NIM_DELETE, &amp;lpData);
}
BOOL ShellIcon::HideIcon ()
{
lpData.uFlags = NIF_ICON;
return Shell_NotifyIcon (NIM_DELETE, &amp;lpData);
}
BOOL ShellIcon::ShowIcon ()
{
lpData.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;
return Shell_NotifyIcon(NIM_ADD, &amp;lpData);
}
BOOL ShellIcon::ChangeIcon (HICON hico)
{
lpData.hIcon = hico;
return Shell_NotifyIcon(NIM_MODIFY, &amp;lpData);
}
BOOL ShellIcon::SetToolTip (LPCTSTR lpToolTip)
{
lpData.uFlags = NIF_TIP;
_tcscpy(lpData.szTip, lpToolTip);
return Shell_NotifyIcon(NIM_MODIFY, &amp;lpData);
}</pre>
<p>
    <br/>
</p><!--autointro-->]]></description><category>软件开发</category><comments>http://yltto.cn/post/13.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=13</wfw:commentRss></item><item><title>IIS 反向代理方法</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/12.html</link><pubDate>Tue, 16 Jul 2024 01:34:14 +0800</pubDate><guid>http://yltto.cn/post/12.html</guid><description><![CDATA[<p style="box-sizing: border-box; font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; margin-top: 0px; margin-bottom: 10px; color: rgb(51, 51, 51); text-wrap: wrap; background-color: rgb(255, 255, 255);"><span style="box-sizing: border-box; font-family: inherit; font-weight: 700;">背景：</span></p><!--autointro-->]]></description><category>服务器相关</category><comments>http://yltto.cn/post/12.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=12</wfw:commentRss></item><item><title>MySQL 分页查询</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/11.html</link><pubDate>Tue, 16 Jul 2024 01:33:21 +0800</pubDate><guid>http://yltto.cn/post/11.html</guid><description><![CDATA[<p style="box-sizing: border-box; font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; margin-top: 0px; margin-bottom: 10px; color: rgb(51, 51, 51); text-wrap: wrap; background-color: rgb(255, 255, 255);">select 字段 from 表名 limit 起始索引，查询条目</p><!--autointro-->]]></description><category>数据库</category><comments>http://yltto.cn/post/11.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=11</wfw:commentRss></item><item><title>TSQL 日期处理大全</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/10.html</link><pubDate>Tue, 16 Jul 2024 01:32:27 +0800</pubDate><guid>http://yltto.cn/post/10.html</guid><description><![CDATA[<p style="box-sizing: border-box; font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; margin-top: 0px; margin-bottom: 10px; color: rgb(51, 51, 51); text-wrap: wrap; background-color: rgb(255, 255, 255);">今天的所有数据：select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0<br style="box-sizing: border-box; font-family: inherit;"/>昨天的所有数据：select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=1<br style="box-sizing: border-box; font-family: inherit;"/>7天内的所有数据：select * from 表名 where DateDiff(dd,datetime类型字段,getdate())&lt;=7<br style="box-sizing: border-box; font-family: inherit;"/>30天内的所有数据：select * from 表名 where DateDiff(dd,datetime类型字段,getdate())&lt;=30<br style="box-sizing: border-box; font-family: inherit;"/>本月的所有数据：select * from 表名 where DateDiff(mm,datetime类型字段,getdate())=0<br style="box-sizing: border-box; font-family: inherit;"/>本年的所有数据：select * from 表名 where DateDiff(yy,datetime类型字段,getdate())=0<br style="box-sizing: border-box; font-family: inherit;"/><br style="box-sizing: border-box; font-family: inherit;"/><br style="box-sizing: border-box; font-family: inherit;"/>查询今天是今年的第几天： select datepart(dayofyear,getDate())<br style="box-sizing: border-box; font-family: inherit;"/>查询今天是本月的第几天：1. select datepart(dd, getDate())<br style="box-sizing: border-box; font-family: inherit;"/>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2. &nbsp;select day(getDate())<br style="box-sizing: border-box; font-family: inherit;"/>查询本周的星期一日期是多少 （注意：指定日期不能是周日，如果是周日会计算到下周一去。所以如果是周日要减一天）</p><!--autointro-->]]></description><category>数据库</category><comments>http://yltto.cn/post/10.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=10</wfw:commentRss></item><item><title>TSQL 查询重复列</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/9.html</link><pubDate>Tue, 16 Jul 2024 01:31:38 +0800</pubDate><guid>http://yltto.cn/post/9.html</guid><description><![CDATA[<p style="box-sizing: border-box; font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; margin-top: 0px; margin-bottom: 10px; color: rgb(51, 51, 51); text-wrap: wrap; background-color: rgb(255, 255, 255);">SELECT *FROM 表名</p><!--autointro-->]]></description><category>数据库</category><comments>http://yltto.cn/post/9.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=9</wfw:commentRss></item><item><title>MongoDB命令大全</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/8.html</link><pubDate>Tue, 16 Jul 2024 01:30:36 +0800</pubDate><guid>http://yltto.cn/post/8.html</guid><description><![CDATA[<p style="box-sizing: border-box; font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; margin-top: 0px; margin-bottom: 10px; color: rgb(51, 51, 51); text-wrap: wrap; background-color: rgb(255, 255, 255);">1.&nbsp; 命令行输入： mongo --port 默认可以不带参数，没有用户名密码</p><!--autointro-->]]></description><category>数据库</category><comments>http://yltto.cn/post/8.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=8</wfw:commentRss></item><item><title>SQLServer查看数据库碎片</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/7.html</link><pubDate>Tue, 16 Jul 2024 01:30:16 +0800</pubDate><guid>http://yltto.cn/post/7.html</guid><description><![CDATA[<p><span style="color: rgb(51, 51, 51); font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; text-wrap: wrap; background-color: rgb(255, 255, 255);">SELECT o.name as tablename,s.* FROM sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL, NULL, NULL) s,sys.objects o where o.object_id =s.object_id order by avg_fragment_size_in_pages desc</span></p><!--autointro-->]]></description><category>数据库</category><comments>http://yltto.cn/post/7.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=7</wfw:commentRss></item><item><title>SQL Server数据库优化、收缩数据库</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/6.html</link><pubDate>Tue, 16 Jul 2024 01:29:38 +0800</pubDate><guid>http://yltto.cn/post/6.html</guid><description><![CDATA[<p style="box-sizing: border-box; font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; margin-top: 0px; margin-bottom: 10px; color: rgb(51, 51, 51); text-wrap: wrap; background-color: rgb(255, 255, 255);"><br style="box-sizing: border-box; font-family: inherit;"/>DECLARE B CURSOR FOR</p><!--autointro-->]]></description><category>数据库</category><comments>http://yltto.cn/post/6.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=6</wfw:commentRss></item><item><title>设置SQL Server只能看自己的数据库</title><author>null@null.com (srxjkj)</author><link>http://yltto.cn/post/5.html</link><pubDate>Tue, 16 Jul 2024 01:28:45 +0800</pubDate><guid>http://yltto.cn/post/5.html</guid><description><![CDATA[<p style="box-sizing: border-box; font-family: &quot;Open Sans&quot;, Helvetica, Tahoma, Arial, &quot;Hiragino Sans GB&quot;, &quot;Microsoft YaHei&quot;, 微软雅黑, &quot;Micro Hei&quot;, SimSun, 宋体, Heiti, 黑体, sans-serif; margin-top: 0px; margin-bottom: 10px; color: rgb(51, 51, 51); text-wrap: wrap; background-color: rgb(255, 255, 255);">1. REVOKE VIEW ANY DATABASE TO [public]&nbsp; &nbsp;//取消PUBLIC查看所有数据库的权限</p><!--autointro-->]]></description><category>数据库</category><comments>http://yltto.cn/post/5.html#comment</comments><wfw:commentRss>http://yltto.cn/feed.asp?cmt=5</wfw:commentRss></item></channel></rss>
