1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > C语言五子棋人人对弈学习笔记

C语言五子棋人人对弈学习笔记

时间:2020-08-07 02:35:19

相关推荐

C语言五子棋人人对弈学习笔记

C语言编写五子棋人人对弈学习笔记

1.头文件#include <conio.h>

#include <conio.h>是一个控制输出的头文件。

包含以下函数:textbackground(color)函数【设置文本的背景颜色】;

clrscr()函数【清屏】;

gotoxy()函数【定位】;

getch()函数【输入字符看不见】

在此游戏中可用于判断鼠标落子的位置

2.头文件#include : 是图形库头文件

如何将其导入:1.下载并安装Visual C++ 6.0 (适合win10)参考资料:Caleb_Sung的《支持Win10:科学安装Visual C++ 6.0教程》

后发现不兼容,又参考@bingo_fang的《win10不兼容中文版的VC++6.0解决办法》,然后参考《怎么解决“无法打开包括文件:“graphics.h”:No such file or directory”的问题》导入了图形库头文件

3.RGB函数

RGB函数,计算机颜色函数,返回代表 RGB 颜色值的整数。

语法

RGB(red, green, blue)

RGB 函数的语法有以下参数:

red 必选。0 到 255 间的整数,代表颜色中的红色成分。

green 必选。0 到 255 间的整数,代表颜色中的绿色成分。

blue 必选。0 到 255 间的整数,代表颜色中的蓝色成分。

说明

接受颜色说明的应用程序方法和属性,要求该说明以整数代表 RGB 颜色值。RGB 颜色值指定了红色、绿色、蓝色的相对强度,三色组合形成显示的特定颜色。

低字节值表示红色,中字节值表示绿色,高字节值表示蓝色。

对于要求反转字节顺序的应用程序,下面函数在反转字节顺序下提供相同信息:

Function RevRGB(red, green, blue)

RevRGB= CLng(blue + (green * 256) + (red * 65536))

End Function

RGB 函数中任一超过 255 的参数都假定为 255。

在js网页脚本中的写法:

function jsRGB(b,g,r){

return r65536+g256+b ;

}

4.IMAGE 是一个结构体

原型如下

typedef struct {

int h;

int w;

int c;

float *data;

} image;(不知道为什么可以用)

5.loadimage函数 功能是装载图标,光标,或位图。将图片添加到程序里(个人理解)

用法如下:loadimage(&img,“test.jpg”) ;

6.initgraph(w+150,h)

这个函数用于初始化绘图环境。

HWND initgraph(

int width,

int height,

int flag = NULL

);

参数:

width

绘图环境的宽度。

height

绘图环境的高度。

flag

绘图环境的样式,默认为 NULL。可为以下值:

值 含义

NOCLOSE 禁用绘图环境的关闭按钮。

NOMINIMIZE 禁用绘图环境的最小化按钮。

SHOWCONSOLE 保留原控制台窗口。

返回值:

创建的绘图窗口的句柄。

摘自:原文:/zhao_fu_lu/article/details/23961111

7.句柄

句柄是一个标识符,是拿来标识对象或者项目的。

如果想更透彻一点地认识句柄,我可以告诉大家,句柄类似指向指针的指针,仅仅是类似,通过句柄可以找到对应的数据,但是不是二级指针。我们知道,所谓指针是一种内存地址。应用程序启动后,组成这个程序的各对象是驻留在内存中的。简单地理解,似乎我们只要获知这个内存的首地址,就可以随时用这个地址访问对象了。如果您真的这样认为,那您可就大错特错了。我们知道,Windows是一个以虚拟内存为基础的操作系统。在这种系统环境下,Windows内存管理器经常在内存中来回移动对象,以此来满足各种应用程序的内存需要。对象被移动意味着它的地址变化了。如果地址总是如此变化,我们该到哪里去找那一个对象呢?

为了解决这个问题,Windows操作系统为全体应用程序腾出一些内存单元,用来专门登记各应用程序的对象在内存中的地址的变化,而前者的物理地址在系统运行期间是始终保持不变的。Windows内存管理器移动了对象在内存中的位置后,会把该对象新的地址及时地告知给对应的句柄进行更新。这样我们只要知道这个句柄,就可以间接地知道对象具体在内存中的哪个位置了。这个地址是在对象装载(Load)时由系统分配给的,当对象卸载时(Unload)又释放给系统。

8.putimage() 输出图像函数

功能: 函数putimage()将一个先前保存在内存中的图像输出到屏幕上。

用法: 此函数调用方式为void putimage(int left,int top,void *buf,int ops);

说明: 参数(left,top)为输出屏幕图像的左上角,即输出图像的起始位置。buf指向要输出的内存中图像。参数ops控制图像以何种方式输出到屏幕上。表1-13给出了图像输出方式。

表1-13 图像输出方式

输出方式符号名 取值 含 义

COPY_PUT 0 图像输出到屏幕上,取代原有图像

XOR_PUT 1 图像和原有像素作异或运算

OR_PUT 2 图像和原有像素作或运算

AND_PUT 3 图像和原有像素作与运算

NOT_PUT 4 把求反的位图像输出到屏幕上

COPY_PUT输出方式

图像中每个像素都直接绘制到屏幕上,取代原有图像像素,包括空白的图像像素(背景)。完全空白的图像可以用来擦除其它图像或屏幕的一部分。但通常选择xOR_PUT输出方式擦除原有图像。

2)XOR_PUT输出方式

原有屏幕每个像素与相应的图像字节作“异或”运算,其结果画到屏幕上。当某一图像和屏幕上原有图像作“异或”运算时,屏幕显示的是两个图像的合成。若相同的图像作异或运算,将有效地擦除该图像,留下原始屏幕。这种输出方式,对动画制作是非常有用的。

3)OR_PUT输出方式

每个图像字节和相应的屏幕像素作“或”运算,再将结果画到屏幕上,这种输出方式也叫“两者取一”。记住,像素中的每位和图像中的每位作“或”运算,这样所得结果是背景和图像的彩色合成图像。

4)AND_PUT输出方式

选择AND_PUT图像输出方式时,屏幕像素和图像字节中都显示的位,运算后仍显示,例如,星图像中的空白背景擦除了方块轮廓以及填充色,只有星图像复盖着的方块留下,即运算后,显示两者相同的图像。

5)NOT_PUT输出方式

NOT_PUT输出方式,除了把图像的每位求反—图像中所有黑的像素(0000)变成了白色(1111),其它方面与COPy_PUT相同。背景图像被重画后将消失。

putimage()函数对应的头文件为garphics.h

返回值: 无

摘自:

原文:/firetaker/article/details/5582376

9.setlinecolor©; // 设置画线颜色,如setlinecolor(RED)

setfillcolor©; // 设置填充颜色,如setlinecolor(RED)

setbkcolor©; // 设置背景颜色

摘自:原文:/housong_csdn/article/details/53857104

fillrectangle函数原型解析

函数声明:

DFBResult FillRectangle (

IDirectFBSurface * thiz,

int x,

int y,

int w,

int h

);

在平面上画了一个黑色(DirectFB系统默认颜色)的指定大小的矩形,左上定点坐标为(x,y),宽度为w,高度为h。

参数介绍:

thiz:自身指针变量,类似this指针的变量;属于DirectFB的招牌写法。

(x, y):表示DFBRctangle的左上角的坐标位置;

宽度为w,高度为h。

参阅 http18.@TOC

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。