贪吃蛇游戏的实现

一.技术要点:

贪吃蛇需要掌握:

        c语言函数,枚举,结构体,动态内存管理,预处理指令,链表,Win32 API等

二.Win32 API

1.Win32 API简介

windows可以帮应用程序卡其视窗,描绘图案,使用周边设备,,Win32 API就是windows32位平台上的应用程序编程接口

2.控制台程序

(1).使用cmd命令设置控制台窗口的长宽

输入mode con cols=100 lines=30

(2.)可以通过命令设置控制台的窗口的名字

title xxx

(3.)C语言的system函数实现控制台的命令

#include<stdio.h>
#include<stdlib.h>
int main()
{
    system("mode con cols=50 lines=20");
    system("title 贪吃蛇");
    system("pause");

    return 0;
}

(4.)控制台屏幕上的坐标

COORD是windows API中定义的结构体,表示一个字符在控制台屏幕缓冲区上的坐标,坐标(0,0)位于缓冲区左上角

CORRD类型声明:

typedef struct _CORRD
{
    SHORT X;
    SHORT Y;
}CORRD, *PCORRD;

给结构体定坐标:

#include <windows.h>
CORRD pos = { 10,15 };

(5.)GetStdHandle

它也是一个windows API函数,用于从一个特定的标准设备(标准输入,标准输出或标准错误)中取得一个句柄(用来标识不同设备的数值),使用这个句柄可以操作设备

函数的声明:

HANDLE GetStdHandle(DWORD nStdHandle);

eg.

HANDLE hOutput = NULL;

//获取标准输出的句柄
hOutput = GetStHandle(STD_OUTPUT_HANDLE);

(6.)GetConsoleCursorInfo

检索有关指定控制台屏幕缓冲区的光标大小和可见性信息(鼠标信息)

函数的声明:

BOOL WINAPI GetConsoleCursorInfo(
    HANDLE               hConsoleOutput 
    PCONSOLE_CURSOR_INFO lpConsoleCursorInfo 
);

 PCONSOLE_CURSOR_INFO是指向CONSOLE_CURSOR_INFO结构的指针,该结构接受有感主机游标(光标)的信息

eg.

#include <windows.h>
int main()
{
    CONSOLE_CURSOR_INFO cursor_info = { 0 };
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
    GetConsoleCursorInfo(handle,&cursor_info);
    return 0;
}

相关推荐

  1. C#实现贪吃游戏

    2024-01-29 15:46:04       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-29 15:46:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-29 15:46:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-29 15:46:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-29 15:46:04       20 阅读

热门阅读

  1. Redis:入门(二)

    2024-01-29 15:46:04       37 阅读
  2. 【Linux笔记】编wpa_supplicantl库

    2024-01-29 15:46:04       33 阅读
  3. SpringMVC

    SpringMVC

    2024-01-29 15:46:04      35 阅读
  4. 多路IO复用服务器——select模型和poll模型

    2024-01-29 15:46:04       35 阅读
  5. mysql迁移至达梦数据库

    2024-01-29 15:46:04       35 阅读
  6. Linux中的知识点

    2024-01-29 15:46:04       34 阅读
  7. 面试经典150题(93-95)

    2024-01-29 15:46:04       37 阅读
  8. 深入了解Spring事件机制的作用与应用场景

    2024-01-29 15:46:04       34 阅读
  9. 美发行业微信小程序的产品功能设计

    2024-01-29 15:46:04       37 阅读
  10. 23种设计模式使用场景分析

    2024-01-29 15:46:04       42 阅读
  11. 智慧泵房服务认证:提升企业竞争力的有效途径

    2024-01-29 15:46:04       38 阅读