资源简介
不同网段间的联机五子棋游戏,含一个服务器端文件和一个客户端文件,是最简单的网络编程实例(入门级应用),喜欢网络编程的请进。

代码片段和文件信息
/**************************************************************************
* @file : 五子棋客户端main文件
* @version : 1.0
* @author : Qiyue
* @date : 2016.5.22
* @brief : 收发客户端信息
**************************************************************************/
#include
#include
#include
#include
#include
using namespace std;
#pragma comment(lib “ws2_32.lib“)
#define SERVER_IP “127.0.0.1“
#define CONNECT_SUCCEED ‘1‘
#define START ‘2‘
#define CANOPERATION ‘3‘// can to operation
#define GIVE_UP ‘4‘ // give up
#define WIN ‘5‘
#define LOSE ‘6‘
#define CLOSE “7“
#define LOCATION ‘8‘
#define QUIT 102
#define FINISH 100
#define CONNECT_ERROR 101
static int chess_board[15][15] = { 0 };
/********************************************************
* @brief :初始化socket
* @input :
* @output :
* @return :
* @author : Qiyue
********************************************************/
int Init(SOCKET &sockSer SOCKADDR_IN &AddrSrv int port);
/********************************************************
* @brief :与服务端连接
* @input :
* @output :
* @return : succceed return 1; else loop
* @author : Qiyue
********************************************************/
int Connect(SOCKET &sockSer SOCKADDR_IN &AddrSrv);
/********************************************************
* @brief :接收消息
* @input :
* @output :
* @return :
* @author : Qiyue
********************************************************/
int MessagePassing(SOCKET &sockCli SOCKADDR_IN &AddrSrv);
/********************************************************
* @brief :分析消息并处理
* @input :
* @output :
* @return :
* @author : Qiyue
********************************************************/
int MessageAnalysis(char* buffSOCKET &sockCli SOCKADDR_IN &AddrSrv);
/********************************************************
* @brief :
* @input :
* @output :
* @return :
* @author : Qiyue
********************************************************/
int InitChessBoard();
/********************************************************
* @brief :刷新棋盘
* @input :
* @output :
* @return :
* @author : Qiyue
********************************************************/
int ShowChessBoard();
/********************************************************
* @brief :接收玩家从键盘输入的信息并处理
* @input :
* @output :
* @return :
* @author : Qiyue
********************************************************/
int Operation(SOCKET &sockCli SOCKADDR_IN &AddrSrv);
int main()
{
int port = 6000;
SOCKET sockCli;
SOCKADDR_IN addrSer;
while(!Init(sockCli addrSer port));
while (Connect(sockCliaddrSer))
{
int rel = MessagePassing(sockCli addrSer);
if (rel == QUIT) break;
closesocket(sockCli);
}
closesocket(sockCli);
return 0;
}
int Init(SOCKET &sockCli SOCKADDR_IN &addrSrv int port)
{
WSADATA wsaD
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8192 2016-07-12 21:47 五子棋\Thumbs.db
文件 6129 2016-06-02 23:09 五子棋\clientmain.cpp
文件 9673 2017-01-22 16:21 五子棋\servermain.cpp
目录 0 2017-03-02 22:31 五子棋\
- 上一篇:傅里叶级数
- 下一篇:webwatch官方版
相关资源
- VisualStudioUninstaller vs卸载工具
- 组态王驱动开发包3.0.0.7(中文)
- 多窗口后台鼠标连点器
- 使用选择性重传协议实现UDP可靠通信
- 通信软件的具体实例──基于Socket的
- VC 获得文件属性 获取文件的创建时
- 用Socket编程实现FTP
- 读者写者问题(读者优先,写者优先
- 用VC 编写的仿QQ聊天室程序源代码
- websocket实现一对一聊天
- 外点法程序
- 外罚函数程序
- qt-电子点菜系统
- 推箱子及人工智能寻路C 源代码
- 自己写的航空订票系统c 版--数据结构
- 数据结构实验魔王语言
- MUSIC算法c 实现
- C 餐厅叫号系统(QT平)
- 国际象棋c 完整版
-
ob
jectARX给Auto CAD加工具条 - 画图程序MFC/VC/VC CRectTracker 串行化
- MFC网络编程实例
- c 课程设计 职工信息管理系统
- VC 游戏编程—附源代码
- IpHlpApi.h&IpHlpApi.lib
- 清华大学 c 郑莉 ppt课件
- c 程序判断离散数学中命题公式
- 多项式求和(数据结构C 版)
- vc 6.0开发的流程图编辑器
- VC 天空盒(skyBox)实现(附源代码)
评论
共有 条评论