| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 440 人关注过本帖
标题:关于贪吃蛇的几个问题。
只看楼主 加入收藏
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
结帖率:69.23%
收藏
 问题点数:0 回复次数:0 
关于贪吃蛇的几个问题。
int Eat(char snake[2])   //吃了苹果
{
        if ((snake[0] == apple[0]) && (snake[1] == apple[1]))   //apple[0] [1]苹果的x y 坐标
       {
                apple[0] = apple[1] = apple[2] = 0;
                gotoxy(N+44,10);          //这个函数做什么的,是为了生成下一个苹果吗
                color(13);
                printf("%d",score[0]*10);
                color(11);                //为什么使用两次color()函数;
               return 1;
           }
        return 0;
}

void Draw(char **snake, int len)    //蛇移动   //这里snake 用指向指针的指针
char** Move(char **snake, char dirx, int *len)   //控制方向    //这里也是
void init(char plate[N+2][N+2], char ***snake_x, int *len)  //初始化    //这里用了三个指针有什么作用?

memcpy(tail, snake[(*len)-1], 2);
  for (i = (*len) - 1; i > 0; --i)
                memcpy(snake[i], snake[i-1], 2);
if (full)   //吃到了食物
           {
                snake = (char **)realloc(snake, sizeof(char *) * ((*len) + 1));//重新为蛇分配内存
                snake[(*len)] = (char *)malloc(sizeof(char) * 2);

这三句话我是这么理解的
先从蛇身上取一个单位赋值给尾巴tail
然后蛇自身赋值给自身
吃了苹果后加一个单位,把尾巴的赋值给新单位
不过那个赋值给自身的代码我有点不理解,总觉得从i-1赋值给i 那么到i=0就停止了没有赋值了,不是就不完整了吗?
搜索更多相关主题的帖子: 贪吃蛇 return apple 做什么 color 
2015-02-23 22:50
快速回复:关于贪吃蛇的几个问题。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014390 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved