c_cpplinux的下tcp的套接字编程示例(代码片段)

author author     2023-01-10     617

关键词:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#include <errno.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/wait.h>
#include <unistd.h>
#include <dirent.h>
#include <signal.h>
#include <ctype.h>
 
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
 
int main()

  int lfd = socket(AF_INET,SOCK_STREAM,0);
 
  int opt = 1;//端口复用
  setsockopt(lfd, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(opt));
 
  struct sockaddr_in addr;
  bzero(&addr, sizeof(addr));
  addr.sin_family = AF_INET;
  //inet_pton(AF_INET, "192.168.78.45", &laddr.sin_addr.s_addr);//监听特定地址
  addr.sin_addr.s_addr = htonl(INADDR_ANY);//监听所有地址
  addr.sin_port = htons(8888);
  if(bind(lfd, (struct sockaddr*)&addr, sizeof(addr))<0)
  
      perror("bind");
      exit(1);
  
 
  if (listen(lfd, 128) < 0)
  
      perror("listen");
      exit(1);
  
 
  bzero(&addr, sizeof(addr));
  socklen_t addrlen = sizeof(addr);
  int cfd = accept(lfd, (struct sockaddr*)&addr,&addrlen);
  char pbuf[16] =  0 ;
  inet_ntop(AF_INET, &addr.sin_addr.s_addr, pbuf, sizeof(pbuf));
  printf("[%s]:[%d] Connect.\n", pbuf, ntohs(addr.sin_port));
 
  //主业务
  char buf[128] =  0 ;
  bzero(&buf, sizeof(buf));
  while (scanf("%s", buf) > 0)
  
      if(send(cfd, buf,strlen(buf),MSG_WAITALL) < 0)
      
          perror("write");
          exit(1);
      
      bzero(buf, sizeof(buf));
  
  close(lfd);
  close(cfd);
  printf("server closed.\n");
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include <errno.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/wait.h>
#include <unistd.h>
#include <dirent.h>
#include <signal.h>
#include <ctype.h>

#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>

int main()

  int sfd = socket(AF_INET, SOCK_STREAM, 0);
  struct sockaddr_in addr;
  bzero(&addr, sizeof(addr));
  addr.sin_family = AF_INET;
  inet_pton(AF_INET, "127.0.0.1", &addr.sin_addr.s_addr);
  addr.sin_port = htons(8888);

  if(connect(sfd, (struct sockaddr*)&addr, sizeof(addr)) < 0)
  
      perror("connect");
      exit(1);
  

  //主业务
  char buf[128] =  0 ;
  while (recv(sfd, buf, sizeof(buf),MSG_WAITALL)> 0)
  
      printf("c:[%s]\n", buf);
      bzero(buf, sizeof(buf));
  
  close(sfd);
  printf("client closed.\n");

c_cpplinux的下ipc通信之本地套接字(代码片段)

查看详情

一个tcp服务器和客户端示例-网络编程

...戳,并发送回客户端;HOST为空,也即默认为本机;TCP的套接字家族名称为AF_INET,套接字类型为SOCK_STREAM;利用bind方法绑定地址,list 查看详情

计算机网络详解--套接字编程(代码片段)

 目录1.什么是网络编程2.TCP/IP协议3.Socket套接字流套接字:使用传输层TCP(传输控制协议)数据报套接字:使用传输层UDP(用户数据报协议)原始套接字4.Java数据报套接字通信模型 UDP数据报套接字编程DatagramSocketAPIDa... 查看详情

c_cpplinux的下epoll的模型实现简单的http服务器(代码片段)

查看详情

网络编程tcp网络应用程序开发(代码片段)

...务。2.TCP客户端程序开发流程的介绍步骤说明:创建客户端套接字对象和服务端套接字建立连接发送数据接收数据关闭客户端套接字3.TCP服务端程序开发流程的介绍步骤说明:创建服务端端套接字对象绑定端口号设置监听等待接受客... 查看详情

tcp/ip网络编程之套接字的多种可选项

套接字可选项进而I/O缓冲大小我们进行套接字编程时往往只关注数据通信,而忽略了套接字具有的不同特性。但是,理解这些特性并根据实际需要进行更改也十分重要。之前我们写的程序在创建好套接字后都是未经特别操作就直... 查看详情

《unix网络编程卷1:套接字联网api》学习笔记——tcp客户/服务器程序示例(代码片段)

...dpid; socklen_tclilen; structsockaddr_incliaddr,servaddr; /*创建一个TCP套接字*/ listenfd=socket(AF_INET,SOCK_STREAM,0); bzero(&servaddr,sizeof(servaddr)); servaddr.sin_family=AF_INET; servaddr.sin_addr.s_addr=htonl(INADDR_ANY); servaddr.sin_port=htons(SERV_PORT);/*SERV_POR... 查看详情

pythonpython中的简单tcp套接字示例(代码片段)

查看详情

java网络编程-第四节:tcp流套接字(serversocket)编程(代码片段)

文章目录一:Java流套接字通信模型二:相关API详解(1)ServerSocket(2)Socket三:TCP通信示例一:客户端发送什么服务端就返回什么(1)代码(2)效果展示(3)分析四: 查看详情

java网络编程-第四节:tcp流套接字(serversocket)编程(代码片段)

文章目录一:Java流套接字通信模型二:相关API详解(1)ServerSocket(2)Socket三:TCP通信示例一:客户端发送什么服务端就返回什么(1)代码(2)效果展示(3)分析四: 查看详情

TCP套接字编程

】TCP套接字编程【英文标题】:TCPsocketprogramming【发布时间】:2014-02-2518:11:50【问题描述】:Socket编程实现一个简单的客户端和服务器通过网络进行通信并实现一个简单的客户端服务器通信。客户端在预定义的端口上打开与服务... 查看详情

tcp和udp套接字编程(java实现)

在了解网络编程之前,我们先了解一下什么叫套接字套接字即指同一台主机内应用层和运输层之间的接口由于这个套接字是建立在网络上建立网络应用的可编程接口因此也将套接字称为应用程序和网络之间的应用程序编程接口!... 查看详情

python网络编程—socket套接字编程(tcp)(代码片段)

套接字介绍1.套接字:实现网络编程进行数据传输的一种技术手段2.Python实现套接字编程:importsocket3.套接字分类流式套接字(SOCK_STREAM):以字节流方式传输数据,实现tcp网络传输方案。(面向连接--tcp协议--可靠的--流式套接字)数据... 查看详情

华为顶级网络工程师分享出这份tcp/ip网络编程笔记!已封神

...种内容,结构清晰、讲解细致、通俗易懂。此书面向利用套接字进行网络编程的初学者,具备C语言基础知识的读者会获得更多帮助。书中收录了丰富的示例,详细展现了Linux和Windows平台下套接字编程的共性与个性。特别是从代码角... 查看详情

tcp套接字编程实现

 一、基于TCP的套接字编程实现流程:1. 服务器端流程简介:         (1)创建套接字(socket)         (2)将套接字绑定到一个本地地址和端口上(bind)&... 查看详情

tcp套接字编程常用函数(代码片段)

...h>intsocket(intfamily,inttype,intprotocol);//调用成功返回非负的套接字描述符,出错返回-1connect函数TCP客户端用connect函数来建立与TCP服务器的连接#include<sys/socket.h 查看详情

go网络编程示例(代码片段)

...户端和服务器程序的组件,这些程序通过TCP、UDP或者UNIX套接字进行通信。网络服务net/http包是在net包的基础上构建的。时钟服务器这个示例是一个时钟服务器,它以每秒一次的频率向客户端发送当前时间:packagemainimport("io""log""ne... 查看详情

基本tcp套接字编程

socket函数为了执行网络I/O,一个进程必须做到第一件事情就是调用socket函数,指定期望的通信协议类型(使用IPv4的TCP、使用IPv6的UDP、Unix域字节流协议等)#include<sys/socket.h>intsocket(intfamily,inttype,intprotocol);//返回:若成功则为... 查看详情