一 前言

上次实现了客户端的TCP通信代码,这次来实现TCP服务端.

二 代码实现

  1. 前期文章
    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服务端相关推荐

  1. Go语言实现TCP服务端和客户端

    Go语言实现TCP服务端和客户端 Go语言实现TCP通信 TCP协议 TCP服务端 TCP客户端 本文转载自Go语言实现TCP通信 Go语言实现TCP通信 TCP协议 TCP/IP(Transmiss ...

  2. tcpip c语言程序设计,TCP 服务端和客户端程序设计(C)

    流程图 1 预备知识 1.1 socket函数 为了执行网络输入输出,一个进程必须做的第一件事就是调用socket函数获得一个文件描述符 #include int socket(int family, ...

  3. MFC:Socket编程—TCP服务端和多个客户端通信

    前言 MFC是微软基础类库,于 C++ 对于 C语言来说,MFC对于window API ,MFC 就相当于C++,window API 相当于C.MFC 封装了 window API 使用起来更加的 ...

  4. TCP服务端程序开发

    TCP服务端程序开发 1. 开发 TCP 服务端程序开发步骤回顾 创建服务端端套接字对象 绑定端口号 设置监听 等待接受客户端的连接请求 接收数据 发送数据 关闭套接字 2. socket 类的介绍 ...

  5. pythontcp服务器如何关闭阻塞_python实现单线程多任务非阻塞TCP服务端

    本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下 # coding:utf-8 from socket import * # 1.创建服务器soc ...

  6. Qt中TCP服务端编程

    文章目录 1 Qt中的TCP服务端编程 1.1 TCP服务端编程介绍 1.2 Qt中的TCP服务端编程 1 Qt中的TCP服务端编程 1.1 TCP服务端编程介绍 网络中的服务端: 服务端是为客户端服 ...

  7. Python基于socket实现的多任务版TCP服务端

    ''' 基于socket实现的多任务版TCP服务端 ''' import socket import threadingdef client_task(client_socket,ip_port):p ...

  8. Python基于socket实现的TCP服务端

    ''' 基于socket实现的TCP服务端 '''import socket # 建立socket对象 server_socket=socket.socket(socket.AF_INET,socke ...

  9. Qt 多线程TCP服务端一键关闭所有客户端

    Qt 多线程TCP服务端一键关闭所有客户端 任务描述: 实现多线程TCP服务端一键关闭所有客户端的连接. 解决过程: 1.Qt的服务端提供了close的功能,但是只用来不响应新接入的客户端. 手册中是 ...

最新文章

  1. ffmpeg 编译Android
  2. 监控操作系统和服务器,监控操作系统和服务器
  3. 使用泛型查询数据小例
  4. php 获取汉字,php 获取汉字长度
  5. docker从仓库找镜像
  6. 第四周 Access总结
  7. 软件工程复习提纲——第十章
  8. 中兴c语言 面试题,中兴手机嵌入式开发面试题汇总(1)
  9. Check Exception or Uncheck Exception
  10. 什么样的团队才是理想中的团队? (转自AtTeam官微的博客)
  11. 网络触发的detach
  12. 特网云 DirectAdmin 安装SSL
  13. 洛阳理工学院计算机类分数线,2017洛阳理工学院录取分数线
  14. 用MATLAB求解拟合公式系数和拟合优度
  15. Anroid 逆向工具
  16. Super Jumper:一个2DOpenGL ES游戏
  17. 电路中滤波电容和退耦电容_怎么分清滤波电容、去耦电容、旁路电容
  18. 微信小程序跳转 redirectTo、navigateTo与switchTap、reLaunch 的区别
  19. mysql-connector-java.jar包的下载教程
  20. 计算机的一些快捷键有哪些,电脑最常用的快捷键有哪些?都在这里!

热门文章

  1. 新电脑到手要干的事情
  2. [转]网易云音乐Android版使用的开源组件
  3. spring配置属性的两种方式
  4. CleanCodeHandbook Chapter 4: Binary Tree(25-32)
  5. UML--行为图(状态图、活动图)
  6. VS 2010 SP1 and SQL CE :ScottGu's Blog
  7. extjs combobox分页加载数据不显示
  8. Hashtable 为什么不叫 HashTable?
  9. AX2012 学习自动生成编码
  10. 在Jupyter Notebook中实现图像检测服务的调用