易码技术论坛

 找回密码
 加入易码
搜索
查看: 736138|回复: 33

关于WriteBlock

[复制链接]
发表于 2006-10-20 14:20:33 | 显示全部楼层
PIC1+PIC2的结果被转换成一个long型指针,指向内存中图像数据的起始位置。
具体什么含义需要看程序本身对PIC1和PIC2的定义。
 楼主| 发表于 2006-10-21 12:24:02 | 显示全部楼层
不太明白!
能否说明白点?
谢谢了
 楼主| 发表于 2006-10-21 12:42:42 | 显示全部楼层
有的程序是在后面又加又乘  搞的我头都大了
发表于 2006-10-21 14:01:57 | 显示全部楼层
你最好把代码都贴上来,只贴一行别人是看不懂的。
发表于 2006-10-21 14:16:09 | 显示全部楼层
对啊。
只贴一行搞的所有人头都大了
 楼主| 发表于 2006-10-22 15:43:52 | 显示全部楼层
好吧
我正在研究下面的一个一张源码:
  1. #define MAPX 3
  2. #define MAPY 3
  3. #define LCDX 10
  4. #define LCDY 5
  5. #define MAPW MAPX*LCDX
  6. #define MAPH MAPY*LCDY
  7. #define PICX 16
  8. #define PICY 16
  9. #define PICSIZE 32
  10. #define KEY_UP 20
  11. #define KEY_DW 21
  12. #define KEY_RT 22
  13. #define KEY_LF 23
  14. #define KEY_PGUP 19
  15. #define KEY_PGDW 14
  16. #define KEY_ENTER 13
  17. #define KEY_SPACE 32
  18. #define KEY_HELP 25
  19. #define KEY_ESC 27
  20. //全局变量
  21. char s[4]=
  22. {
  23.    0,3,6,8
  24. }
  25. ;
  26. int x,y,sx,sy,mx,my,st ;
  27. int ManPicA[][16]=
  28. {
  29.    //背面立 0
  30.    0xdc27,0xf82f,0xfc1f,0xfe3f,0xfa3f,0xfc3f,0xfc3f,0xf42f,0xf81f,0xf00f,0xd81b,0x1428,0x9429,0x781e,0x9009,0x6006,
  31.    //背面右 1
  32.    0x0000,0xdc27,0xf82f,0xfc1f,0xfe3f,0xfa3f,0xfc3f,0xfc3f,0xf42f,0xf81f,0xf00f,0xd81b,0x2428,0x242e,0xf811,0x001e,
  33.    //背面左 2
  34.    0x0000,0xdc27,0xf82f,0xfc1f,0xfe3f,0xfa3f,0xfc3f,0xfc3f,0xf42f,0xf81f,0xf00f,0xd81b,0x1424,0x7424,0x881f,0x7800,
  35.    //正面立 3
  36.    0xe43b,0xf41f,0xf83f,0xfc7f,0xbc5d,0xfc3e,0x9429,0x9429,0x781e,0x300c,0xd81b,0x9429,0x1428,0x781e,0x9009,0x6006,
  37.    //正面右 4
  38.    0x0000,0xe43b,0xf41f,0xf83f,0xfc7f,0xbc5d,0xfc3e,0x9429,0x9429,0x781e,0x300c,0xd81b,0xa429,0x243e,0xf811,0x000f,
  39.    //正面左 5
  40.    0x0000,0xe43b,0xf41f,0xf83f,0xfc7f,0xbc5d,0xfc3e,0x9429,0x9429,0x781e,0x300c,0xd81b,0x9425,0x7c24,0x881f,0xf000,
  41.    //右侧立 6
  42.    0xdc27,0xf82f,0xfc1f,0xfe3f,0xaa3f,0xf83f,0x583d,0x583d,0x281c,0x100e,0xe005,0x3009,0x3009,0xf00f,0x2006,0xe003,
  43.    //右侧走 7
  44.    0x0000,0xdc27,0xf82f,0xfc1f,0xfe3f,0xaa3f,0xf83f,0x583d,0x583d,0x281c,0x100e,0xe007,0x5e0e,0x5216,0xe413,0x380e,
  45.    //左侧立 8
  46.    0xe43b,0xf41f,0xf83f,0xfc7f,0xfc55,0xfc1f,0xbc1a,0xbc1a,0x3814,0x7008,0xa007,0x900c,0x900c,0xf00f,0x6004,0xc007,
  47.    //左侧走 9
  48.    0x0000,0xe43b,0xf41f,0xf83f,0xfc7f,0xfc55,0xfc1f,0xbc1a,0xbc1a,0x3814,0x7008,0xe007,0x707a,0x684a,0xc827,0x701c
  49.    
  50. }
  51. ;
  52. int ManPicB[][16]=
  53. {
  54.    //掩模图01
  55.    0xdfe7,0xffef,0xffff,0xffff,0xfbff,0xffff,0xffff,0xf7ef,0xffff,0xffff,0xdffb,0x17e8,0x97e9,0x7ffe,0x9ff9,0x7ffe,
  56.    0xffff,0xffff,0xffff,0xffff,0xffff,0xfbff,0xffff,0xffff,0xf7ef,0xffff,0xffff,0xdffb,0x27e8,0x27ee,0xfff1,0xffff,
  57.    0xffff,0xffff,0xffff,0xffff,0xffff,0xfbff,0xffff,0xffff,0xf7ef,0xffff,0xffff,0xdffb,0x17e4,0x77e4,0x8fff,0xffff,
  58.    0xe7fb,0xf7ff,0xffff,0xffff,0xbfdd,0xfffe,0x97e9,0x97e9,0x7ffe,0x3ffc,0xdffb,0x97e9,0x17e8,0x7ffe,0x9ff9,0x7ffe,
  59.    0xffff,0xffff,0xffff,0xffff,0xffff,0xbfdd,0xfffe,0x97e9,0x97e9,0x7ffe,0x3ffc,0xdffb,0xa7e9,0x27fe,0xfff1,0xffff,
  60.    0xffff,0xffff,0xffff,0xffff,0xffff,0xbfdd,0xfffe,0x97e9,0x97e9,0x7ffe,0x3ffc,0xdffb,0x97e5,0x7fe4,0x8fff,0xffff,
  61.    0xdfe7,0xffef,0xffff,0xffff,0xafff,0xffff,0x5ffd,0x5ffd,0x2ffc,0x1ffe,0xfffd,0x3ff9,0x3ff9,0xffff,0x3ffe,0xffff,
  62.    0xffff,0xffff,0xffff,0xffff,0xffff,0xafff,0xffff,0x5ffd,0x5ffd,0x2ffc,0x1ffe,0xffff,0x5ffe,0x53f6,0xe7f3,0x3ffe,
  63.    0xe7fb,0xf7ff,0xffff,0xffff,0xfff5,0xffff,0xbffa,0xbffa,0x3ff4,0x7ff8,0xbfff,0x9ffc,0x9ffc,0xffff,0x7ffc,0xffff,
  64.    0xffff,0xffff,0xffff,0xffff,0xffff,0xfff5,0xffff,0xbffa,0xbffa,0x3ff4,0x7ff8,0xffff,0x7ffa,0x6fca,0xcfe7,0x7ffc
  65.    //掩模图02
  66.    
  67. }
  68. ;
  69. int MapPic[][16]=
  70. {
  71.    //空白 00
  72.    0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,
  73.    //全黑 01
  74.    0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,
  75.    //地板 02
  76.    0xa2a2,0x5555,0xa2a2,0x5555,0x0000,0x5555,0xa2a2,0x5555,0xa2a2,0x5555,0xa2a2,0x5555,0x0000,0x5555,0xa2a2,0x5555,
  77.    //路牌1 03
  78.    0xfcf7,0xaaa8,0xaa97,0xc694,0xec94,0xa8b7,0x68b8,0x9077,0xd817,0x1410,0xf23f,0x8142,0xe23e,0x3418,0xf81f,0x0000,
  79.    //路牌2 04
  80.    0xff7f,0xa9cd,0x8bba,0xa9a8,0xabaa,0xa9ca,0xff7f,0x1010,0xd817,0x1410,0xf23f,0x8142,0xe22e,0x3418,0xf81f,0x0000,
  81.    //路牌3 05
  82.    0x800f,0x5810,0x3c2a,0x1a2a,0xa20,0x221,0x6419,0xf80f,0xe80b,0x808,0xf80f,0x4001,0x7007,0x180c,0xf80f,0x0000,
  83.    //路牌4 06
  84.    0x2462,0x5495,0x5485,0x74b5,0x5495,0x7772,0x2800,0xf47f,0x1a40,0xfd7f,0xfe7f,0xfc7f,0xb807,0xb006,0x8006,0x8007,
  85.    //椅子 07
  86.    0xe00,0x1a00,0x1a00,0x1a00,0xfa07,0x1a08,0x1a18,0x1e18,0x1c18,0x1c18,0x1c18,0xfc1f,0xf81f,0xc0c,0xf40b,0x1c0e,
  87.    //桌子 08
  88.    0xffff,0xabaa,0x55d5,0xabaa,0x55d5,0xabaa,0x55d5,0xffff,0x0180,0xffff,0x2a54,0x3a5c,0x0a50,0x0a50,0x0a50,0x0e70
  89.    
  90.    //树木
  91. }
  92. ;
  93. int mapdat[][5][10]=
  94. {
  95.    // MAPX * MAPY
  96.    //map0
  97.    1,1,1,1,1,1,1,1,1,1,
  98.    1,6,0,0,0,0,0,0,0,0,
  99.    0,0,0,0,0,0,0,0,0,0,
  100.    1,6,0,0,0,2,2,2,2,2,
  101.    1,0,0,0,0,2,2,2,2,2,
  102.    //map1
  103.    1,1,1,1,1,1,1,1,1,1,
  104.    0,0,0,0,0,0,0,0,0,0,
  105.    0,0,0,0,0,0,0,0,0,0,
  106.    2,0,0,0,0,0,0,0,0,2,
  107.    2,0,0,0,0,0,0,0,0,2,
  108.    //map2
  109.    1,1,1,1,1,1,1,1,1,1,
  110.    0,0,0,0,0,0,0,0,0,1,
  111.    0,0,0,3,0,0,0,0,0,1,
  112.    2,2,2,2,2,0,0,0,0,1,
  113.    2,2,2,2,2,0,0,0,4,1,
  114.    //map3
  115.    1,0,0,0,0,2,2,2,2,2,
  116.    1,0,0,0,0,2,2,2,2,2,
  117.    1,0,0,7,0,0,0,0,0,0,
  118.    1,0,0,0,0,2,2,2,2,2,
  119.    1,0,0,0,0,2,2,2,2,2,
  120.    //map4
  121.    2,0,0,0,0,0,0,0,0,2,
  122.    2,0,0,0,0,0,0,0,0,2,
  123.    0,0,0,0,8,7,0,0,0,0,
  124.    2,0,0,0,0,0,0,0,0,2,
  125.    2,0,0,0,0,0,0,0,0,2,
  126.    //map5
  127.    2,2,2,2,2,0,0,0,0,1,
  128.    2,2,2,2,2,0,0,0,0,1,
  129.    0,0,0,0,0,0,0,0,0,1,
  130.    2,2,2,2,2,0,0,0,0,1,
  131.    2,2,2,2,2,0,0,0,0,1,
  132.    //map6
  133.    1,0,0,0,0,2,2,2,2,2,
  134.    1,0,0,0,0,2,2,2,2,2,
  135.    1,0,0,0,7,0,0,0,0,0,
  136.    1,0,0,0,0,0,0,0,0,5,
  137.    1,1,1,1,1,1,1,1,1,1,
  138.    //map7
  139.    2,0,0,0,0,0,0,0,0,2,
  140.    2,0,0,0,0,0,0,0,0,2,
  141.    0,0,0,0,8,0,0,0,0,0,
  142.    0,0,0,0,0,0,0,0,0,5,
  143.    1,1,1,1,1,1,1,1,1,1,
  144.    //map8
  145.    2,2,2,2,2,0,0,0,0,0,
  146.    2,2,2,2,2,0,0,0,4,1,
  147.    0,0,0,0,0,0,0,0,0,1,
  148.    0,5,0,0,0,8,0,0,0,1,
  149.    0,1,1,1,1,1,1,1,1,1
  150.    
  151. }
  152. ;
  153. int PressHold()
  154. {
  155.    if(CheckKey(KEY_UP))return KEY_UP ;
  156.    if(CheckKey(KEY_DW))return KEY_DW ;
  157.    if(CheckKey(KEY_RT))return KEY_RT ;
  158.    if(CheckKey(KEY_LF))return KEY_LF ;
  159.    return 0 ;
  160. }
  161. int GetMap(int lcdx,int lcdy,int tmp)
  162. {
  163.    *tmp=(lcdy/LCDY)*MAPX+(lcdx/LCDX);
  164.    *(tmp+1)=lcdx%LCDX ;
  165.    *(tmp+2)=lcdy%LCDY ;
  166.    return mapdat[*tmp][*(tmp+2)][*(tmp+1)];
  167. }
  168. void DrawMap(int xx,int yy,char id)
  169. {
  170.    WriteBlock(xx*PICX,yy*PICY,PICX,PICY,1,MapPic+id*PICSIZE);
  171. }
  172. void DrawMan(int x2,int y2,char manid,char n)
  173. {
  174.    char tmp[3];
  175.    DrawMap(sx,sy,GetMap(x,y,tmp));
  176.    WriteBlock(x2*PICX/2,y2*PICX/2,PICX,PICY,3,ManPicA+(manid*10+n)*PICSIZE);
  177.    WriteBlock(x2*PICX/2,y2*PICX/2,PICX,PICY,4,ManPicB+(manid*10+n)*PICSIZE);
  178.    Refresh();
  179. }
  180. void MoveScreen(char k,int dev)
  181. {
  182.    int inc ;
  183.    char xx,yy,i,j,mapid,tmp[3];
  184.    if(k<KEY_UP||k>KEY_LF)return ;
  185.    //屏幕下移
  186.    else if(k==KEY_UP)
  187.    {
  188.       dev=-dev*160 ;
  189.       i=0 ;
  190.       j=0 ;
  191.    }
  192.    //屏幕上移
  193.    else if(k==KEY_DW)
  194.    {
  195.       dev=dev*160 ;
  196.       i=0 ;
  197.       j=LCDY-1 ;
  198.    }
  199.    //屏幕左移
  200.    else if(k==KEY_RT)
  201.    {
  202.       dev=dev ;
  203.       i=LCDX-1 ;
  204.       j=0 ;
  205.    }
  206.    //屏幕右移
  207.    else if(k==KEY_LF)
  208.    {
  209.       dev=-dev ;
  210.       i=0 ;
  211.       j=0 ;
  212.    }
  213.    WriteBlock(0,0,160,80,1,_GRAPH+dev);
  214.    GetMap(x-sx+i,y-sy+j,tmp);
  215.    mapid=tmp[0];
  216.    xx=tmp[1];
  217.    yy=tmp[2];
  218.    if(k<=KEY_DW)
  219.    {
  220.       for(i=xx;i<LCDX;i++)
  221.       DrawMap(i-xx,j,mapdat[mapid][yy][i]);
  222.       for(i=0;i<xx;i++)
  223.       DrawMap(LCDX+i-xx,j,mapdat[mapid+1][yy][i]);
  224.    }
  225.    else
  226.    {
  227.       for(j=yy;j<LCDY;j++)
  228.       DrawMap(i,j-yy,mapdat[mapid][j][xx]);
  229.       for(j=0;j<yy;j++)
  230.       DrawMap(i,LCDY+j-yy,mapdat[mapid+MAPX][j][xx]);
  231.       //修正文曲星屏幕自身BUG
  232.       if(i==0)
  233.       {
  234.         GetMap(x-sx+1,y-sy,tmp);
  235.         mapid=tmp[0];
  236.         xx=tmp[1];
  237.         for(j=yy;j<LCDY;j++)
  238.         DrawMap(1,j-yy,mapdat[mapid][j][xx]);
  239.         for(j=0;j<yy;j++)
  240.         DrawMap(1,LCDY+j-yy,mapdat[mapid+MAPX][j][xx]);
  241.       }
  242.    }
  243.    
  244.    
  245. }
  246. void ShowMap(int lcdx,int lcdy,char mode)
  247. {
  248.    char i,j,xx,yy,mapid ;
  249.    char tmp[3];
  250.    if(mode==1)return ;
  251.    GetMap(lcdx,lcdy,tmp);
  252.    mapid=tmp[0];
  253.    xx=tmp[1];
  254.    yy=tmp[2];
  255.    for(j=yy;j<LCDY;j++)
  256.    {
  257.       for(i=xx;i<LCDX;i++)
  258.       DrawMap(i-xx,j-yy,mapdat[mapid][j][i]);
  259.       for(i=0;i<xx;i++)
  260.       DrawMap(LCDX-xx+i,j-yy,mapdat[mapid+1][j][i]);
  261.    }
  262.    for(j=0;j<yy;j++)
  263.    {
  264.       for(i=xx;i<LCDX;i++)
  265.       DrawMap(i-xx,LCDY-yy+j,mapdat[mapid+MAPX][j][i]);
  266.       for(i=0;i<xx;i++)
  267.       DrawMap(LCDX-xx+i,LCDY-yy+j,mapdat[mapid+MAPX+1][j][i]);
  268.    }
  269. }
  270. void MoveMan(char k)
  271. {
  272.    int rx,ry,dx,dy ;
  273.    char px,py,mode,tmp[3];
  274.    char oldmap,newmap ;
  275.    dx=0 ;
  276.    dy=0 ;
  277.    rx=x ;
  278.    ry=y ;
  279.    px=sx ;
  280.    py=sy ;
  281.    if(k==KEY_UP)dy=-1 ;
  282.    else
  283.    if(k==KEY_DW)dy=1 ;
  284.    else
  285.    if(k==KEY_LF)dx=-1 ;
  286.    else
  287.    if(k==KEY_RT)dx=1 ;
  288.    oldmap=GetMap(x,y,tmp);
  289.    x=x+dx ;
  290.    y=y+dy ;
  291.    if(x<0||x>=MAPW||y<0||y>=MAPH)newmap=1 ;
  292.    else newmap=GetMap(x,y,tmp);
  293.    if(newmap==0||newmap==2)
  294.    {
  295.       if((dy==0&&x>4&&x<MAPW-4&&rx>4&&rx<MAPW-4)||(dx==0&&y>1&&y<MAPH-2&&ry>1&&ry<MAPH-2))
  296.       {
  297.         mode=0 ;
  298.         MoveScreen(k,2);
  299.         px=sx-dx ;
  300.         py=sy-dy ;
  301.         ShowMap(x-sx,y-sy,0);
  302.         Delay(125);
  303.         
  304.       }
  305.       else
  306.       {
  307.         mode=1 ;
  308.         sx=sx+dx ;
  309.         sy=sy+dy ;
  310.         Delay(125);
  311.       }
  312.       
  313.    }
  314.    else
  315.    {
  316.       mode=0 ;
  317.       x=rx ;
  318.       y=ry ;
  319.       Delay(150);
  320.    }
  321.    
  322.    if(dx==0)st=(st==1)+1 ;
  323.    DrawMap(px,py,oldmap);
  324.    DrawMan(sx*2-dx*mode,sy*2-dy*mode,0,s[k-KEY_UP]+1+st);
  325.    Delay(180);
  326.    DrawMan(sx*2,sy*2,0,s[k-KEY_UP]);
  327.    if(mode==1)DrawMap(px,py,oldmap);
  328.    Refresh();
  329. }
  330. void Incident()
  331. {
  332. }
  333. void WorldMap()
  334. {
  335. }
  336. void MoveMode()
  337. {
  338. }
  339. char ShowMenu()
  340. {
  341. }
  342. void ShowHelp()
  343. {
  344. }
  345. void main()
  346. {
  347.    char ch,ch_old,i,j,k,mode ;
  348.    int mapid,manid ;
  349.    sx=5 ;
  350.    sy=2 ;
  351.    x=sx ;
  352.    y=sy ;
  353.    mode=0 ;
  354.    manid=0 ;
  355.    ch=KEY_RT ;
  356.    ch_old=ch ;
  357.    
  358.    ShowMap(x-sx,y-sy,mode);
  359.    DrawMan(sx*2,sy*2,manid,s[ch-KEY_UP]);
  360.    Refresh();
  361.    
  362.    while(ch!=KEY_ESC)
  363.    {
  364.       ch=getchar();
  365.       if(ch>=KEY_UP&&ch<=KEY_LF)
  366.       {
  367.         st=0 ;
  368.         if(ch!=ch_old)
  369.         {
  370.            DrawMan(sx*2,sy*2,manid,s[ch-KEY_UP]);
  371.            Delay(200);
  372.            ch_old=ch ;
  373.         }
  374.         for(;;)
  375.         {
  376.            k=PressHold();
  377.            if(!k)break;
  378.            else if(k!=ch_old) st=(k<=KEY_DW);
  379.            MoveMan(k);
  380.            ch_old=k ;
  381.         }
  382.         
  383.       }
  384.       else if(ch==KEY_ENTER)
  385.       {
  386.         Incident();
  387.       }
  388.       else if(ch==KEY_SPACE)
  389.       {
  390.         WorldMap();
  391.       }
  392.       else if(ch==KEY_PGUP)
  393.       {
  394.         MoveMode();
  395.       }
  396.       else if(ch==KEY_PGDW)
  397.       {
  398.         ShowMenu();
  399.       }
  400.       else if(ch==KEY_HELP)
  401.       {
  402.         ShowHelp();
  403.       }
  404.    }
  405.    
  406.    exit(1);
  407.    
  408. }
复制代码


不知道作者是哪位  只好对不起作者了
这个是使一个人物在一个地图上走的程序     在这当中WriteBlock后一大堆+ *的   非常难以理解
希望帮我讲解一下  谢谢!
发表于 2006-10-22 18:02:43 | 显示全部楼层
代码走样了
你想问哪一行?
 楼主| 发表于 2006-10-23 12:19:20 | 显示全部楼层

不好意思
在这里:
void DrawMap(int xx,int yy,char id)
{
  WriteBlock(xx*PICX,yy*PICY,PICX,PICY,1,MapPic+id*PICSIZE);
}

void DrawMan(int x2,int y2,char manid,char n)
{
  char tmp[3];
  DrawMap(sx,sy,GetMap(x,y,tmp));
  WriteBlock(x2*PICX/2,y2*PICX/2,PICX,PICY,3,ManPicA+(manid*10+n)*PICSIZE);
  WriteBlock(x2*PICX/2,y2*PICX/2,PICX,PICY,4,ManPicB+(manid*10+n)*PICSIZE);
  Refresh();
}


在这当中有很多+*的   如果是返回一个long型指针  我晕!看不懂!谢谢帮忙!


......LAVAX之父?  哇  专家啊   咋就昨天没注意呐!太兴奋了......
发表于 2006-10-23 12:49:28 | 显示全部楼层
+和*是用来计算图片的地址吧
 楼主| 发表于 2006-10-23 17:52:51 | 显示全部楼层
55555
能不能说的详细点
拜托了
发表于 2006-10-23 18:07:16 | 显示全部楼层
建议LS先去看看关于数组和指针的一些相关介绍吧~
 楼主| 发表于 2006-10-24 12:16:37 | 显示全部楼层
5555
偶不是不懂指针
是对与WriteBlock后面的指针很陌生  不知道怎么用
就像1岁小孩看到了大人怎么走路却不会走一样
55555
雏鹰不会走来就会飞的!
 楼主| 发表于 2006-10-24 12:18:07 | 显示全部楼层
举个例子说明一下WriteBlock的用法就行了
拜托了
发表于 2006-10-24 12:20:12 | 显示全部楼层
WriteBlock
原型 void WriteBlock(int x,int y,int width,int height,int type,addr data);
功能 把位图绘制到屏幕缓冲区
说明 在屏幕的(x,y)坐标处绘图,图的宽为width,高为height,图形的数据地址为data
    type的bit6为1时直接在屏幕上绘图。
        bit3为1时图形的所有点取反。
        bit2-0: 1:copy 2:not 3r 4:and 5:xor 6:透明copy(仅用于256色模式)
--------------------------------------------------------------------------------

举例

char fa[]={
0xff,0xe0,0x80,0x20,0xbb,0xa0,0x8a,0x20,
0x91,0x20,0xa0,0xa0,0xbb,0xa0,0x8a,0xa0,
0xba,0xa0,0xa0,0x20,0xbb,0xa0,0x8a,0xa0,
0x89,0x20,0xba,0xa0,0x80,0x20,0xff,0xe0};

void main()
{
   ClearScreen();
   WriteBlock(60,30,11,16,1,fa);
   WriteBlock(80,30,11,16,2,fa);
   Refresh();
   getchar();
}
 楼主| 发表于 2006-10-25 12:27:07 | 显示全部楼层
对啊对啊   终于返回正题了
偶就是问WriteBlock函数,
它后面是加图片数据的,
它返回一个long指针干什么的啊?
具体点  现在是讨论WriteBlock函数    偶没见过这个函数后用指针的    请说明作用   谢谢
 楼主| 发表于 2006-10-25 12:27:58 | 显示全部楼层
顺便问一下
这里的指针在这个源程序中是干什么的
再次感谢
发表于 2006-10-25 13:25:08 | 显示全部楼层
LS还是去找些基础教程来看吧~
要不你可以参考一下这个。

LavaX基础教程.rar

164 KB, 下载次数: 82

我写的LavaX基础教程

 楼主| 发表于 2006-10-25 16:34:11 | 显示全部楼层
5555
难道你不相信我的水平?
这个早看过了
也许这个概念在你的脑子里是清楚的
但不代表我!
5555
指针我知道
但WriteBlock是显示图片的函数啊
我没见过的
能不能说清楚些
只是WriteBlock的用法啊   对了    再把它的用法详细的说一下好吗?
不要用专业的
用老百姓能听懂的语言就行了  谢谢
 楼主| 发表于 2006-10-25 16:36:35 | 显示全部楼层

为什么总是在"指针"边缘徘徊呢?
发表于 2006-10-25 16:39:29 | 显示全部楼层
引用第19楼qqq7895432006-10-25 16:36发表的“”:

为什么总是在"指针"边缘徘徊呢?
希望你能谦虚一点,不要浮躁。
如果你真的了解指针,那么WriteBlock函数对你来说不会有问题。
如果你不了解的话,建议你先去认识一下,不然以后类似的问题还是会为难你。
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-28 01:24 , Processed in 0.017219 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表