贪吃蛇设计详解

在去年12月中,初次接触c语言,我靠着为数不多的知识,使用数组仿照写了一份贪吃蛇,现在时隔5个月,我已经有能力独立写出真正的贪吃蛇而不是简单的仿照(虽然写的是挺简单的)。

那么我们现在就正式开始今天的主题,贪吃蛇设计:

前置知识:

这一次的知识跨度有点大,介绍了不少新的内容才能完成贪吃蛇的设计,让我们先来看看前置知识:

控制台程序:

我们需要包含头文件<windows.h>

首先就来讲讲控制台的指令

cmd指令:

平常我们运⾏起来的⿊框程序其实就是控制台程序
我们可以使⽤cmd命令来设置控制台窗⼝的⻓宽:设置控制台窗⼝的大小。
cmd指令写法为:
system(" mode con cols= 100 lines= 30 ")
cols为列,lines为行,即将窗口的大小设置为30行100列。

title指令:

使用title指令修改窗口名字
写法为:
system("title 贪吃蛇")
将窗口名字修改为贪吃蛇。

cls指令:

写法为:
system("cls")
用处为:清屏
pause指令
写法为:
system("pause");
用处为:按下任意键才能指向下一步操作

句柄:

句柄可以理解为一个可以操作其他设备的东西。

GetStdHandle函数:

GetStdHandle是⼀个Windows API函数。
它⽤于从⼀个特定的标准设备(标准输⼊、标准输出或标
准错误)中取得⼀个句柄(⽤来标识不同设备的数值),使⽤这个句柄可以操作设备。
写法为:
HANDLE GetStdHandle (DWORD nStdHandle);
其中HANDLE为句柄的类型名, DWORD为需要获取的设备
例如:
HANDLE hOutput = NULL ;
hOutput = GetStdHandle(STD_OUTPUT_HANDLE);
STD_OUTPUT_HANDLE即为输出设备,可以理解为窗口。

GetConsoleCursorInfo函数:

该函数的用处为检索有关指定控制台屏幕缓冲区的光标大小和可见性的信息。

该函数的形式为:

BOOL WINAPI GetConsoleCursorInfo (
HANDLE hConsoleOutput,
PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
);
第一个参数为句柄,第二个参数为指向 CONSOLE_CURSOR_INFO 类型变量的指针

CONSOLE_CURSOR_INFO为存放光标数据的结构体

形式为:
typedef struct _ CONSOLE_CURSOR_INFO {
DWORD dwSize;
BOOL bVisible;
} CONSOLE_CURSOR_INFO, *PCONSOLE_CURSOR_INFO;
dwSize,由光标填充的字符单元格的百分⽐。 此值介于1到100之间。 光标外观会变化,范围从完
全填充单元格到单元底部的⽔平线条。
bVisible,游标的可见性。 如果光标可见,则此成员为 TRUE。
由此,我们便可以写出:
HANDLE hOutput = NULL ;
// 获取标准输出的句柄 ( ⽤来标识不同设备的数值 )
hOutput = GetStdHandle
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值