设为首页 加入收藏

TOP

2.1.2 小试牛刀--模拟实现Windows的TCP程序(2)
2013-10-07 15:53:56 来源: 作者: 【 】 浏览:89
Tags:2.1.2 小试牛刀 模拟 实现 Windows TCP 程序

2.1.2  小试牛刀--模拟实现Windows的TCP程序(2)

3. 设计数据结构

(1) 服务器端的全局变量如下:

  1. /*定义全局变量*/  
  2. char *hostName;  
  3. unsigned short maxService;  
  4. unsigned short  port; 

(2) 客户端的全局变量如下:
  1. /*定义全局变量*/  
  2. unsigned short port;  
  3. char *hostName; 

4. 规划函数

(1) 服务器端。服务器端的构成函数如下。

intial():用于初始化服务器端的全局变量。

InitSockets():用于初始化Winsock。

GetArgments():用于获取用户提供的选项。

ErrorPrint():用于输出错误信息。

LoopControl():实现循环控制,当服务器次数在指定范围内时,将接收客户端请求,并创建一个线程为客户端服务。

Service():用于服务客户端。

(2) 客户端。客户端的构成函数如下。

InitSockets():用于初始化Winsock。

GetArgment():用于获取用户提供的选项。

ErrorPrint():用于输出错误信息。

5. 具体编码

(1) 服务器端编码

① 预处理

预处理包括文件导入、头文件加载、定义常量、定义变量等操作。具体代码如下:

  1. /*导入库文件*/  
  2. #pragma comment(lib, "wsock32.lib")  
  3. /*加载头文件*/  
  4. #include <stdio.h> 
  5. #include <winsock2.h> 
  6. /*自定义函数原型*/  
  7. void initial();  
  8. int InitSockets(void);  
  9.  
  10. void GetArgments(int argc, char **argv);  
  11. void ErrorPrint(x);  
  12. void userHelp();  
  13.  
  14. int LoopControl(SOCKET listenfd, int isMultiTasking);  
  15.  
  16. void Service(LPVOID lpv);  
  17.  
  18. /*定义常量*/  
  19. #define MAX_SER 10  
  20. /*定义全局变量*/  
  21. char *hostName;  
  22. unsigned short maxService;  
  23. unsigned short  port;  

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇2.1.2 小试牛刀--模拟实现Windows.. 下一篇2.1.2 小试牛刀--模拟实现Windows..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C++中智能指针的性能 (2025-12-25 03:49:29)
·如何用智能指针实现c (2025-12-25 03:49:27)
·如何在 C 语言中管理 (2025-12-25 03:20:14)
·C语言和内存管理有什 (2025-12-25 03:20:11)
·为什么C语言从不被淘 (2025-12-25 03:20:08)