[10/20]

news/2024/10/31 7:35:16/

UDP服务器

#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <string.h>
#include <unistd.h>#define N 128
#define PORT 6666
#define IP "192.168.8.25"#define ERR_MSG(msg)  do{\fprintf(stderr,"__%d__: ",__LINE__);\perror(msg);\
}while(0)int main(int argc, const char *argv[])
{int sfd = socket(AF_INET,SOCK_DGRAM,0);if(sfd < 0){ERR_MSG("socket");return -1;}struct sockaddr_in sin;sin.sin_family = AF_INET;sin.sin_port   = htons(PORT);sin.sin_addr.s_addr = inet_addr(IP);if(bind(sfd,(struct sockaddr*)&sin,sizeof(sin)) < 0){ERR_MSG("bind");return -1;}struct sockaddr_in cin;socklen_t addrlen = sizeof(cin);char buf[N] = "";ssize_t res = 0;while(1){bzero(buf,sizeof(buf));res = recvfrom(sfd,buf,sizeof(buf),0,(struct sockaddr*)&cin,&addrlen);if(res < 0){ERR_MSG("recvfrom");return -1;}printf("[%s:%d]:%s\n",inet_ntoa(cin.sin_addr),ntohs(cin.sin_port),buf);strcat(buf, "*_*");if(sendto(sfd, buf, sizeof(buf), 0, (struct sockaddr*)&cin ,sizeof(cin))<0){ERR_MSG("sendto");return -1;}printf("发送成功\n");}close(sfd);return 0;
}

UDP客户端

#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <string.h>
#include <unistd.h>#define N 128
#define PORT 6666
#define IP "192.168.8.25"#define ERR_MSG(msg)  do{\fprintf(stderr,"__%d__: ",__LINE__);\perror(msg);\
}while(0)int main(int argc, const char *argv[])
{int sfd = socket(AF_INET,SOCK_DGRAM,0);if(sfd < 0){ERR_MSG("socket");return -1;}struct sockaddr_in sin;sin.sin_family = AF_INET;sin.sin_port   = htons(PORT);sin.sin_addr.s_addr = inet_addr(IP);char buf[N] = "";ssize_t res = 0;while(1){bzero(buf, sizeof(buf));printf("请输入>>>");fgets(buf, sizeof(buf), stdin);buf[strlen(buf)-1] = 0;if(sendto(sfd, buf, sizeof(buf), 0, (struct sockaddr*)&sin ,sizeof(sin))<0){ERR_MSG("sendto");return -1;}printf("发送成功\n");bzero(buf,sizeof(buf));res = recvfrom(sfd,buf,sizeof(buf),0,NULL,NULL);if(res < 0){ERR_MSG("recvfrom");return -1;}printf("%s\n",buf);}close(sfd);return 0;
}


http://www.ppmy.cn/news/445394.html

相关文章

如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸

如果已知英制长度的英尺foot和英寸inch的值&#xff0c;那么对应的米是(footinch/12)0.3048。现在&#xff0c;如果用户输入的是厘米数&#xff0c;那么对应英制长度的英尺和英寸是多少呢&#xff1f;别忘了1英尺等于12英寸 解题误区&#xff1a;将公式倒过来解决 正确解题思路…

LaTeX如何设行间距为20磅

在word里面设置固定行距为 20磅&#xff0c; 在 latex里如何对应设置呢&#xff1f;是不是\setlength{\baselineskip}{20pt} 首先我们要了解 LaTeX常用的几个单位换算&#xff1a; 见&#xff1a; LaTeX长度单位入门 而“磅”是衡量印刷字体大小的单位,约等于七十二分之一…

「液晶」优派 VX2025wm 20英寸宽屏8ms 灰阶

优派 VX2025wm 主要参数 液晶显示屏20英寸 可视尺寸433 x 271mm 亮度性能300cd/m2 对比比率800:1 响应时间8ms 灰阶 显示色彩16.7M真彩 宽屏是 屏幕比例16:10 点距0.258mm 带宽模拟 205,数字 165MHz 优派 VX2025wm 技术参数 水平扫描30-82KHz 垂直扫描50-75Hz 水平…

编写一个程序,提示用户输入身高单位(英寸,米,厘米)包括姓名使用float类型

#include<stdio.h> void main() { float a;//厘米 float meter100;//米 float b 0.393701;//一一厘米等于这么多英寸 char l_name[20] ; printf("请输入厘米a"); scanf("%f %s",&a,l_name); printf("%1.2f米…

一文搞懂像素(px)、分辨率、CSS长度单位

博主目前在蚂蚁集团-体验技术部&#xff0c;AntV/S2 是博主所在团队的开源项目——多维交叉分析表格&#xff0c;欢迎使用&#xff0c;感谢到 S2 github 仓库点赞 star&#xff0c;有任何关于前端面试、就业、技术问题都可给在文章后留言。 对于做前端的朋友&#xff0c;相信看…

来评测下:OPPOK7x和畅享20哪个好

OPPOK7x和畅享20哪个好&#xff0c;哪款手机更值得入手&#xff1f; OPPOK7x和畅享20这两款手机都是搭载天玑720处理器&#xff0c;那么这两款手机在参数上有什么区别&#xff1f;哪款手机更值得入手&#xff1f;对此感兴趣的快来看看吧。 参考&#xff1a;权威媒体发布年度十…

20

博客园Logo 首页 新闻 博问 专区 闪存 班级 代码改变世界 搜索 注册 登录 博客园首页新随笔联系订阅管理 随笔 - 186 文章 - 0 评论 - 97 【Mycat】Mycat核心开发者带你轻松掌握Mycat路由转发&#xff01;&#xff01; 写在前面 熟悉Mycat的小伙伴都知道&#xff0c;Mycat一个很…

win10 bootloader 找不到设备

在win10 系统下&#xff0c;adb reboot fastboot 进入fastboot模式下&#xff0c;fastboot devices就可以识别到devices信息&#xff0c;但是通过命令adb reboot bootloader进入bootloader模式下&#xff0c;就无法识别。具体处理步骤如下&#xff1a;打开电脑端的设备管理器&a…