C++ 五子棋双人对战免费源码----鼠标操作(DEV-CPP)

五子棋的规则就不用我说了吧,大家应该都玩过
今天,我来发一个鼠标操作的

函数使用须知

首先最重要的是这个函数:
头文件:windows.h
注意:请先将窗口属性调为插入模式(方便用这个函数):
1.右键点击

2.点击属性
在这里插入图片描述

3.只打开插入模式
在这里插入图片描述

4.点击确定(OK了)

HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
HANDLE hIn = GetStdHandle(STD_INPUT_HANDLE);

CONSOLE_SCREEN_BUFFER_INFO bInfo;
INPUT_RECORD mouseRec;
DWORD res;
ReadConsoleInput(hIn, &mouseRec, 1, &res);
CloseHandle(hOut);  // 关闭标准输出设备句柄  
CloseHandle(hIn);   // 关闭标准输入设备句柄 
//具体调用 mouseRec.。。。

mouseRec

typedef struct _MOUSE_EVENT_RECORD { 
		COORD dwMousePosition;		// 当前鼠标位置
		DWORD dwButtonState;		// 鼠标按钮状态
		DWORD dwControlKeyState;	// 键盘控制键状态
		DWORD dwEventFlags;			// 事件状态
} MOUSE_EVENT_RECORD;
//这个东西一般都在"INPUT_RECORD的变量名.Event.MouseEvent.以上变量"

示例代码

//我写的一个简单地例子
#include<iostream>
#include<windows.h>
#include<conio.h>
using namespace std;
int main()
{
	getch();
	HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
	HANDLE hIn = GetStdHandle(STD_INPUT_HANDLE);

	CONSOLE_SCREEN_BUFFER_INFO bInfo;
	INPUT_RECORD mouseRec;
	DWORD res;
	cout<<"**********\n** 开始 **\n**********\n";
	while(1)
	{
		ReadConsoleInput(hIn, &mouseRec, 1, &res);//读取一个鼠标操作
		if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED&&mouseRec.Event.MouseEvent.dwMousePosition.X<10&&mouseRec.Event.MouseEvent.dwMousePosition.Y<3)//如果点击了
		{
			system("cls");
			cout<<"加载中.";
			Sleep(1000);
			cout<<'.';Sleep(1000);
			cout<<'.';Sleep(1000);
			cout<<'.';Sleep(1000);
			cout<<'.';Sleep(1000);break;
		}
	}
	CloseHandle(hOut);  // 关闭标准输出设备句柄  
	CloseHandle(hIn);   // 关闭标准输入设备句柄  
}

  • 注意,在用这个函数前不能用system!!!

代码展示区 #1

好了接着上代码:

#include<cstdio>
#include<iostream>
#include<windows.h>
#include<conio.h>
using namespace std;
int x[100]={3,7,11,15,19,23,27,31,35,39,43,47,51},y[100]={0,2,4,6,8,10,12,14,16,18,20,22,24},a[150][150];
int p1[500][500],p2[500][500],p1_i,p2_i;//p1白,p2蓝 
const int _x=22,_y=5;
string s[2]={"黑棋","白棋"}; 
#define Ye  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
#define W  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
#define W1  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6f);
#define B  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_INTENSITY);
#define Bl  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x60);
void mapn(){
	const int _x=13;
	Ye;
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6e);
	for(int j=0;j<_x;++j){
		cout<<"  ";
		for(int i=0;i<_x;++i)cout<<"╋  ";
		cout<<endl<<"                                                      "<<endl;
	} 
	W;
	printf("**悔棋**\n鼠标操作,按鼠标左键放置,现在轮到");
	B;
	printf("黑棋");
}
void GotoXy(int x,int y){//x列,y行 
    HANDLE hout;
    COORD coord;
    coord.X=x;
    coord.Y=y;
    hout=GetStdHandle(STD_OUTPUT_HANDLE);
    SetConsoleCursorPosition(hout,coord);
}
void win(string s){
	GotoXy(0,28);
	cout<<s<<"WIN!\n";
	W;
	system("pause");
	exit(0);
}
void clear(){
	GotoXy(0,0);
	for(int i=0;i<29;++i)cout<<"                                                                                                                                                   "<<endl;
	GotoXy(0,0);
}
void find(int x_,int y_,bool &f,bool &d){
	bool sss=1;
	for(int i=0;i<13;++i) 
		for(int j=0;j<13;++j) 
			if(a[y[i]][x[j]]!=0){
				sss=0;break;
			}
	if(x_>=0&&x_<=7&&y_==26&&!sss){
		W;
		GotoXy(8,26);
		cout<<"1.是/0.否";
		char c=getch();
		if(c=='1'){
			if(f==1){
				p2_i--;
				GotoXy(p2[p2_i][1],p2[p2_i][0]);
				a[p2[p2_i][0]][p2[p2_i][1]+1]=0;
				p2[p2_i][0]=p2[p2_i][1]=0;
			}else if(f==0){
				p1_i--;
				GotoXy(p1[p1_i][1],p1[p1_i][0]);
				a[p1[p1_i][0]][p1[p1_i][1]+1]=0;
				p1[p1_i][0]=p1[p1_i][1]=0;
			}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6e);cout<<"╋";
			d=1;
		}
		GotoXy(8,26);
		W;
		cout<<"                  ";SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6e);
		Sleep(100);
		return ;
	}
	bool t=0;
	int h=0,l=-1;
	for(int i=0;i<13;++i){
		if(x_==x[i]||x_==x[i]+1||x_==x[i]-1){
			h=x[i];
			break;
		}
	}
	for(int j=0;j<13;++j){
		if(y_==y[j]&&a[y[j]][h]==0){
			l=y[j];
			break;
		}
	}
	if(a[l][h]==0&&h!=0&&l!=-1){
		GotoXy(h-1,l);
		int js=0;
		if(f==1){
			p1[p1_i][0]=l;//y;
			p1[p1_i][1]=h-1;//x;
			p1_i++;
			a[l][h]=1;
			W1;
			cout<<"●";
			for(int i=0;i<13;++i){
				if(a[l][x[i]]==1)js++;
				else js=0;
				if(js==5)win("白棋");
			}
			js=0;
			for(int i=0;i<13;++i){
				if(a[y[i]][h]==1)js++;
				else js=0;
				if(js==5)win("白棋");
			}
			for(int i=0;i<13;i++)
				for(int j=0;j<13;j++){
					if((a[y[i]][x[j]]!=0&&a[y[i]][x[j]]==1&&a[y[i+1]][x[j+1]]==1&&a[y[i+2]][x[j+2]]==1&&a[y[i+3]][x[j+3]]==1&&a[y[i+4]][x[j+4]]==1)||(a[y[i]][x[j+4]]!=0&&a[y[i]][x[j+4]]==a[y[i+1]][x[j+3]]&&a[y[i]][x[j+4]]==a[y[i+2]][x[j+2]]&&a[y[i]][x[j+4]]==a[y[i+3]][x[j+1]]&&a[y[i]][x[j+4]]==a[y[i+4]][x[j]]))win("白棋");
				}
		}else{
			p2[p2_i][0]=l;//y;
			p2[p2_i][1]=h-1;//x;
			p2_i++;
			js=0;
			a[l][h]=2;
			Bl;
			cout<<"●";
			for(int i=0;i<13;++i){
				if(a[l][x[i]]==2)js++;
				else js=0;
				if(js==5)win("黑棋");
			}
			js=0;
			for(int i=0;i<13;++i){
				if(js==5)win("黑棋");
				if(a[y[i]][h]==2)js++;
				else js=0;
			}
			for(int i=0;i<13;i++)
				for(int j=0;j<13;j++){
					if((a[y[i]][x[j]]!=0&&a[y[i]][x[j]]==2&&a[y[i+1]][x[j+1]]==2&&a[y[i+2]][x[j+2]]==2&&a[y[i+3]][x[j+3]]==2&&a[y[i+4]][x[j+4]]==2)||(a[y[i]][x[j+4]]!=0&&a[y[i]][x[j+4]]==a[y[i+1]][x[j+3]]&&a[y[i]][x[j+4]]==a[y[i+2]][x[j+2]]&&a[y[i]][x[j+4]]==a[y[i+3]][x[j+1]]&&a[y[i]][x[j+4]]==a[y[i+4]][x[j]]))win("黑棋");
				}
		}d=1;
	}else d=0;
}
void hide(){
	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
	CONSOLE_CURSOR_INFO CursorInfo;
    GetConsoleCursorInfo(handle, &CursorInfo);
    CursorInfo.bVisible = 0; 
    SetConsoleCursorInfo(handle, &CursorInfo);
}
void game(){
	W;
	cout<<"     ********";
	B;
	cout<<"Gobang";
	W;
	cout<<"**********";
	cout<<endl<<"            开始游戏"<<endl<<"            退出游戏"<<endl<<"            关于作者与帮助(必看)"<<endl<<endl;
	Ye;
	cout<<"   *********请先调至插入模式*********";
}
void zz(){
	cout<<"作者:Accteped\nCSDN:https://blog.csdn.net/Accteped?spm=1000.2115.3001.5343\nQQ:暂无\n洛谷:Accteped,https://www.luogu.com.cn/user/368851\n这是作者第4个游戏";
	cout<<endl<<"\n\n帮助:\n用鼠标点击下棋\n下面有悔棋标识,点击后输入1或0\n请将窗口调大,并调成插入模式,具体方法请看\nhttps://blog.csdn.net/Accteped/article/details/113341770\nHave a good time!";
	getch();
	clear();
}
int main(){
	SetConsoleTitle("Gobang/五子棋");
	hide();
	game();
	HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
	HANDLE hIn = GetStdHandle(STD_INPUT_HANDLE);
	CONSOLE_SCREEN_BUFFER_INFO bInfo;
	INPUT_RECORD mouseRec;
	DWORD res;
	bool f1=0,f2=0,f3=0;
	while(1){
		ReadConsoleInput(hIn, &mouseRec, 1, &res);
		if(mouseRec.Event.MouseEvent.dwMousePosition.X>=12&&mouseRec.Event.MouseEvent.dwMousePosition.X<=19&&mouseRec.Event.MouseEvent.dwMousePosition.Y==1){
			if(!f1){
				f1=1;
				GotoXy(12,1);
				B;
				cout<<"开始游戏";
			}
			if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED)break;
		}else if(f1){
			f1=0;
			GotoXy(12,1);
			W;
			cout<<"开始游戏";
		}
		if(mouseRec.Event.MouseEvent.dwMousePosition.X>=12&&mouseRec.Event.MouseEvent.dwMousePosition.X<=19&&mouseRec.Event.MouseEvent.dwMousePosition.Y==2){
			if(!f2){
				f2=1;
				GotoXy(12,2);
				B;
				cout<<"退出游戏";
			}if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED){
				clear();
				W;
				cout<<"确定吗 1.是 0.否";
				char cc=getch();
				if(cc=='1'){
					clear();
					cout<<"退出成功\n";
					system("pause");
					exit(0);
				}
				clear();
				game();    
			}
		}else if(f2){
			f2=0;
			GotoXy(12,2);
			W;
			cout<<"退出游戏";
		}
		if(mouseRec.Event.MouseEvent.dwMousePosition.X>=12&&mouseRec.Event.MouseEvent.dwMousePosition.X<=31&&mouseRec.Event.MouseEvent.dwMousePosition.Y==3){
			if(!f3){
				f3=1;
				GotoXy(12,3);
				B;
				cout<<"关于作者与帮助(必看)";
			}if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED){
				clear();
				W;
				zz();
				game();
			}
		}else if(f3){
			f3=0;
			GotoXy(12,3);
			W;
			cout<<"关于作者与帮助(必看)";
		}
	}
	clear();
	mapn();
	bool b=0;
	while(1){
		Sleep(110); 
		ReadConsoleInput(hIn, &mouseRec, 1, &res);
		if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED){
			int xs=mouseRec.Event.MouseEvent.dwMousePosition.X,ys=mouseRec.Event.MouseEvent.dwMousePosition.Y;
			bool d=0;
			find(xs,ys,b,d);
			if(d==1){
				if(b==0){
					b=1;
					W;
				}
				else{
					b=0;
					B;
				}
				GotoXy(34,27);
				cout<<s[b]; 
			}
			bool sss=1;
			for(int i=0;i<13;++i) 
				for(int j=0;j<13;++j) 
					if(a[y[i]][x[j]]==0){
						sss=0;break;
					}
			if(sss){
				clear();
				cout<<"该局为和局\n";
				system("pause"); 
				exit(0);
			}
		}
	}
}

代码展示区 #2

因为有些电脑的有些中文字符只占一格,所以会出现格式错乱
如果上一个不行,就试一下这个

#include<cstdio>
#include<iostream>
#include<windows.h>
#include<conio.h>
using namespace std;
int x[100]={3,7,11,15,19,23,27,31,35,39,43,47,51},y[100]={0,2,4,6,8,10,12,14,16,18,20,22,24},a[150][150];
int p1[500][500],p2[500][500],p1_i,p2_i;//p1白,p2黑 
const int _x=22,_y=5;
string s[2]={"黑棋","白棋"}; 
#define Ye  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
#define W  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
#define W1  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6f);
#define B  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_INTENSITY);
#define Bl  SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x60);
void mapn(){
	const int _x=13;
	Ye;
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6e);
	for(int j=0;j<_x;++j){
		cout<<"  ";
		for(int i=0;i<_x;++i)cout<<"╋   ";
		cout<<endl<<"                                                      "<<endl;
	} 
	W;
	printf("**悔棋**\n鼠标操作,按鼠标左键放置,现在轮到");
	B;
	printf("黑棋");
}
void GotoXy(int x,int y){//x列,y行 
    HANDLE hout;
    COORD coord;
    coord.X=x;
    coord.Y=y;
    hout=GetStdHandle(STD_OUTPUT_HANDLE);
    SetConsoleCursorPosition(hout,coord);
}
void win(string s){
	GotoXy(0,28);
	cout<<s<<"WIN!\n";
	W;
	system("pause");
	exit(0);
}
void clear(){
	GotoXy(0,0);
	for(int i=0;i<29;++i)cout<<"                                                                                                                                                                                                                                     "<<endl;
	GotoXy(0,0);
}
void find(int x_,int y_,bool &f,bool &d){
	bool sss=1;
	for(int i=0;i<13;++i) 
		for(int j=0;j<13;++j) 
			if(a[y[i]][x[j]]!=0){
				sss=0;break;
			}
	if(x_>=0&&x_<=7&&y_==26&&!sss){
		W;
		GotoXy(8,26);
		cout<<"1.是/0.否";
		char c=getch();
		if(c=='1'){
			if(f==1){
				p2_i--;
				GotoXy(p2[p2_i][1],p2[p2_i][0]);
				a[p2[p2_i][0]][p2[p2_i][1]+1]=0;
				p2[p2_i][0]=p2[p2_i][1]=0;
			}else if(f==0){
				p1_i--;
				GotoXy(p1[p1_i][1],p1[p1_i][0]);
				a[p1[p1_i][0]][p1[p1_i][1]+1]=0;
				p1[p1_i][0]=p1[p1_i][1]=0;
			}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6e);cout<<"╋ ";
			d=1;
		}GotoXy(8,26);
		W;
		cout<<"                  ";SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),0x6e);
		Sleep(100);
		return ;
	}
	bool t=0;
	int h=0,l=-1;
	for(int i=0;i<13;++i){
		if(x_==x[i]||x_==x[i]+1||x_==x[i]-1){
			h=x[i];
			break;
		}
	}
	for(int j=0;j<13;++j){
		if(y_==y[j]&&a[y[j]][h]==0){
			l=y[j];
			break;
		}
	}
	if(a[l][h]==0&&h!=0&&l!=-1){
		GotoXy(h-1,l);
		int js=0;
		if(f==1){
			p1[p1_i][0]=l;//y;
			p1[p1_i][1]=h-1;//x;
			p1_i++;
			a[l][h]=1;
			W1; 
			cout<<"● ";
			for(int i=0;i<13;++i){
				if(a[l][x[i]]==1)js++;
				else js=0;
				if(js==5)win("白棋");
			}
			js=0;
			for(int i=0;i<13;++i){
				if(a[y[i]][h]==1)js++;
				else js=0;
				if(js==5)win("白棋");
			}
			for(int i=0;i<13;i++)
				for(int j=0;j<13;j++){
					if((a[y[i]][x[j]]!=0&&a[y[i]][x[j]]==1&&a[y[i+1]][x[j+1]]==1&&a[y[i+2]][x[j+2]]==1&&a[y[i+3]][x[j+3]]==1&&a[y[i+4]][x[j+4]]==1)||(a[y[i]][x[j+4]]!=0&&a[y[i]][x[j+4]]==a[y[i+1]][x[j+3]]&&a[y[i]][x[j+4]]==a[y[i+2]][x[j+2]]&&a[y[i]][x[j+4]]==a[y[i+3]][x[j+1]]&&a[y[i]][x[j+4]]==a[y[i+4]][x[j]]))win("白棋");
				}
		}else{
			p2[p2_i][0]=l;//y;
			p2[p2_i][1]=h-1;//x;
			p2_i++;
			js=0;
			a[l][h]=2;
			Bl;
			cout<<"● ";
			for(int i=0;i<13;++i){
				if(a[l][x[i]]==2)js++;
				else js=0;
				if(js==5)win("黑棋");
			}
			js=0;
			for(int i=0;i<13;++i){
				if(js==5)win("黑棋");
				if(a[y[i]][h]==2)js++;
				else js=0;
			}
			for(int i=0;i<13;i++)
				for(int j=0;j<13;j++){
					if((a[y[i]][x[j]]!=0&&a[y[i]][x[j]]==2&&a[y[i+1]][x[j+1]]==2&&a[y[i+2]][x[j+2]]==2&&a[y[i+3]][x[j+3]]==2&&a[y[i+4]][x[j+4]]==2)||(a[y[i]][x[j+4]]!=0&&a[y[i]][x[j+4]]==a[y[i+1]][x[j+3]]&&a[y[i]][x[j+4]]==a[y[i+2]][x[j+2]]&&a[y[i]][x[j+4]]==a[y[i+3]][x[j+1]]&&a[y[i]][x[j+4]]==a[y[i+4]][x[j]]))win("黑棋");
				}
		}d=1;
	}else d=0;
}
void hide(){
	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
	CONSOLE_CURSOR_INFO CursorInfo;
    GetConsoleCursorInfo(handle, &CursorInfo);
    CursorInfo.bVisible = 0; 
    SetConsoleCursorInfo(handle, &CursorInfo);
}
void game(){
	W;
	cout<<"     ********";
	B;
	cout<<"Gobang";W;
	cout<<"**********";
	cout<<endl<<"            开始游戏"<<endl<<"            退出游戏"<<endl<<"            关于作者与帮助(必看)"<<endl<<endl;
	Ye;
	cout<<"   *********请先调至插入模式*********";
}
void zz(){
	cout<<"作者:Accteped\nCSDN:https://blog.csdn.net/Accteped?spm=1000.2115.3001.5343\nQQ:暂无\n洛谷:Accteped,https://www.luogu.com.cn/user/368851\n这是作者第4个游戏";
	cout<<endl<<"\n\n帮助:\n用鼠标点击下棋\n下面有悔棋标识,点击后输入1或0\n请将窗口调大,并调成插入模式,具体方法请看\nhttps://blog.csdn.net/Accteped/article/details/113341770\nHave a good time!";
	getch();
	clear();
}
int main(){
	SetConsoleTitle("Gobang/五子棋");
	hide();
	game();
	HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
	HANDLE hIn = GetStdHandle(STD_INPUT_HANDLE);
	CONSOLE_SCREEN_BUFFER_INFO bInfo;
	INPUT_RECORD mouseRec;
	DWORD res;
	bool f1=0,f2=0,f3=0;
	while(1){
		ReadConsoleInput(hIn, &mouseRec, 1, &res);
		if(mouseRec.Event.MouseEvent.dwMousePosition.X>=12&&mouseRec.Event.MouseEvent.dwMousePosition.X<=19&&mouseRec.Event.MouseEvent.dwMousePosition.Y==1){
			if(!f1){
				f1=1;
				GotoXy(12,1);
				B;
				cout<<"开始游戏";
			}
			if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED)break;
		}else if(f1){
			f1=0;
			GotoXy(12,1);
			W;
			cout<<"开始游戏";
		}
		if(mouseRec.Event.MouseEvent.dwMousePosition.X>=12&&mouseRec.Event.MouseEvent.dwMousePosition.X<=19&&mouseRec.Event.MouseEvent.dwMousePosition.Y==2){
			if(!f2){
				f2=1;
				GotoXy(12,2);
				B;
				cout<<"退出游戏";
			}if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED){
				clear();
				W;
				cout<<"确定吗 1.是 0.否";
				char cc=getch();
				if(cc=='1'){
					clear();
					cout<<"退出成功\n";
					system("pause");
					exit(0);
				}
				clear();
				game();    
			}
		}else if(f2){
			f2=0;
			GotoXy(12,2);
			W;
			cout<<"退出游戏";
		}
		if(mouseRec.Event.MouseEvent.dwMousePosition.X>=12&&mouseRec.Event.MouseEvent.dwMousePosition.X<=31&&mouseRec.Event.MouseEvent.dwMousePosition.Y==3){
			if(!f3){
				f3=1;
				GotoXy(12,3);
				B;
				cout<<"关于作者与帮助(必看)";
			}if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED){
				clear();
				W;
				zz();
				game();
			}
		}else if(f3){
			f3=0;
			GotoXy(12,3);
			W;
			cout<<"关于作者与帮助(必看)";
		}
	}
	clear();
	mapn();
	bool b=0;
	while(1){
		Sleep(110); 
		ReadConsoleInput(hIn, &mouseRec, 1, &res);
		if(mouseRec.Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED){
			int xs=mouseRec.Event.MouseEvent.dwMousePosition.X,ys=mouseRec.Event.MouseEvent.dwMousePosition.Y;
			bool d=0;
			find(xs,ys,b,d);
			if(d==1){
				if(b==0){
					b=1;
					W;
				}
				else{
					b=0;
					B;
				}
				GotoXy(34,27);
				cout<<s[b]; 
			}
			bool sss=1;
			for(int i=0;i<13;++i) 
				for(int j=0;j<13;++j) 
					if(a[y[i]][x[j]]==0){
						sss=0;break;
					}
			if(sss){
				clear();
				cout<<"该局为和局\n";
				system("pause"); 
				exit(0);
			}
		}
	}
}

总结

这个函数并不是很难,可以自行学习。
我相信,你也可以!

好了,代码都给你们了
来个三连呗
顺便帮忙转发一下吧
谢谢!

Then 一个团队

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值