C语言实现TCP服务端
一 前言
上次实现了客户端的TCP通信代码,这次来实现TCP服务端.
二 代码实现
- 前期文章
C语言TCP客户端获取时间
Unix网络编程卷一第三章笔记
2.代码
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>#include <sys/socket.h>
#include <netinet/in.h>#include <unistd.h>#define MAX_LINE 1024
#define LISTENQ 10 //最大连接数量/2void send_error(char *error);int main () {int sockfd ,connfd;//套接字、连接描述符struct sockaddr_in servaddr;char message[MAX_LINE]="";if( (sockfd = socket(AF_INET,SOCK_STREAM,0)) <0) {send_error("socket error");}//初始化套接字结构,TCP协议,server IP and portbzero(&servaddr,sizeof(servaddr));//清0操作servaddr.sin_family = AF_INET;servaddr.sin_port = htons(5330);//portservaddr.sin_addr.s_addr = htonl(INADDR_ANY);if( bind(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr)) < 0)send_error("blind error");if(listen(sockfd,LISTENQ) <0)send_error("listen error");while (1) {if( (connfd = accept(sockfd,(struct sockaddr *)NULL,NULL) ) <0)send_error("46 accept error");time_t ticks;if( (ticks= time(NULL))<0){send_error("time error");}snprintf(message,sizeof(message),"%24s\r\n",ctime(&ticks));if (write(connfd,message,strlen(message))<0) {send_error("write error");}if( close (connfd)<0) {send_error("close error");}}return 0;
}void send_error(char *error){perror(error);exit(0);}
3 代码调试
可利用网上的免费网络调试助手(USR-TCP232-Test V1.4.exe)或者用客户端代码进行调试
C语言实现TCP服务端相关推荐
- Go语言实现TCP服务端和客户端
Go语言实现TCP服务端和客户端 Go语言实现TCP通信 TCP协议 TCP服务端 TCP客户端 本文转载自Go语言实现TCP通信 Go语言实现TCP通信 TCP协议 TCP/IP(Transmiss ...
- tcpip c语言程序设计,TCP 服务端和客户端程序设计(C)
流程图 1 预备知识 1.1 socket函数 为了执行网络输入输出,一个进程必须做的第一件事就是调用socket函数获得一个文件描述符 #include int socket(int family, ...
- MFC:Socket编程—TCP服务端和多个客户端通信
前言 MFC是微软基础类库,于 C++ 对于 C语言来说,MFC对于window API ,MFC 就相当于C++,window API 相当于C.MFC 封装了 window API 使用起来更加的 ...
- TCP服务端程序开发
TCP服务端程序开发 1. 开发 TCP 服务端程序开发步骤回顾 创建服务端端套接字对象 绑定端口号 设置监听 等待接受客户端的连接请求 接收数据 发送数据 关闭套接字 2. socket 类的介绍 ...
- pythontcp服务器如何关闭阻塞_python实现单线程多任务非阻塞TCP服务端
本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下 # coding:utf-8 from socket import * # 1.创建服务器soc ...
- Qt中TCP服务端编程
文章目录 1 Qt中的TCP服务端编程 1.1 TCP服务端编程介绍 1.2 Qt中的TCP服务端编程 1 Qt中的TCP服务端编程 1.1 TCP服务端编程介绍 网络中的服务端: 服务端是为客户端服 ...
- Python基于socket实现的多任务版TCP服务端
''' 基于socket实现的多任务版TCP服务端 ''' import socket import threadingdef client_task(client_socket,ip_port):p ...
- Python基于socket实现的TCP服务端
''' 基于socket实现的TCP服务端 '''import socket # 建立socket对象 server_socket=socket.socket(socket.AF_INET,socke ...
- Qt 多线程TCP服务端一键关闭所有客户端
Qt 多线程TCP服务端一键关闭所有客户端 任务描述: 实现多线程TCP服务端一键关闭所有客户端的连接. 解决过程: 1.Qt的服务端提供了close的功能,但是只用来不响应新接入的客户端. 手册中是 ...
最新文章
- ffmpeg 编译Android
- 监控操作系统和服务器,监控操作系统和服务器
- 使用泛型查询数据小例
- php 获取汉字,php 获取汉字长度
- docker从仓库找镜像
- 第四周 Access总结
- 软件工程复习提纲——第十章
- 中兴c语言 面试题,中兴手机嵌入式开发面试题汇总(1)
- Check Exception or Uncheck Exception
- 什么样的团队才是理想中的团队? (转自AtTeam官微的博客)
- 网络触发的detach
- 特网云 DirectAdmin 安装SSL
- 洛阳理工学院计算机类分数线,2017洛阳理工学院录取分数线
- 用MATLAB求解拟合公式系数和拟合优度
- Anroid 逆向工具
- Super Jumper:一个2DOpenGL ES游戏
- 电路中滤波电容和退耦电容_怎么分清滤波电容、去耦电容、旁路电容
- 微信小程序跳转 redirectTo、navigateTo与switchTap、reLaunch 的区别
- mysql-connector-java.jar包的下载教程
- 计算机的一些快捷键有哪些,电脑最常用的快捷键有哪些?都在这里!