UNIX网络编程卷1 时间获取程序server UDP 协议无关[通俗易懂]

UNIX网络编程卷1 时间获取程序server UDP 协议无关

大家好,又见面了,我是全栈君。

本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie

/**
 * UDP 协议无关 调用 getaddrinfo 和 udp_server
 **/
#include	"unp.h"
#include	<time.h>


int
main(int argc, char **argv)
{
	int				sockfd;
	ssize_t			n;
	char			buff[MAXLINE];
	time_t			ticks;
	socklen_t		len;
	struct sockaddr_storage	cliaddr;


	//1.利用 Udp_server 得到套接字
	if (argc == 2)
		sockfd = Udp_server(NULL, argv[1], NULL);
	else if (argc == 3)
		sockfd = Udp_server(argv[1], argv[2], NULL);
	else
		err_quit("usage: daytimeudpsrv [ <host> ] <service or port>");


	//2.服务器循环。

接受客户请求。发送应答 for ( ; ; ) { len = sizeof(cliaddr); //服务器堵塞在 recvfrom 调用,等待客户连接 n = Recvfrom(sockfd, buff, MAXLINE, 0, (SA *)&cliaddr, &len); printf("datagram from %s\n", Sock_ntop((SA *)&cliaddr, len)); //发送应答 ticks = time(NULL); snprintf(buff, sizeof(buff), "%.24s\r\n", ctime(&ticks)); Sendto(sockfd, buff, strlen(buff), 0, (SA *)&cliaddr, len); //没有连接,所以不用关闭已连接套接字 }}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115939.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月28日 下午1:00
下一篇 2022年1月28日 下午2:00


相关推荐

  • navicat15的激活码[免费获取]

    (navicat15的激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlMLZPB5EL5Q-eyJsaWN…

    2022年3月21日
    102
  • 智能体工作流

    智能体工作流

    2026年3月16日
    3
  • Vue生命周期函数执行顺序_生命周期函数

    Vue生命周期函数执行顺序_生命周期函数createdcreated在刚进入页面的时候,会触发该函数的方法。只在页面刚开始加载时执行一次。activated一进入页面就触发;可用于初始化页面数据等

    2022年8月30日
    4
  • python函数闭包_python闭包的使用场景

    python函数闭包_python闭包的使用场景闭包首先了解一下:如果在一个函数的内部定义了另一个函数,外部的我们叫他外函数,内部的我们叫他内函数。在一个外函数中定义了一个内函数,内函数里运用了外函数的临时变量,并且外函数的返回值是内函数的引用

    2022年7月30日
    7
  • MFC读取Excel(一)

    MFC读取Excel(一)软件 vs2013 程序功能 MFC 读取 Excel 里的第一个单元格的值步骤 第一步 创建基于对话框的 MFC 工程第二步 添加库 添加 Excel 类库在工程名上右键 选择 添加 类 或者点击菜单栏的 项目 gt 添加类 选择 TypeLib 中的 MFC 类 MFCClassFrom 类来源选 注册表 在可用的类型库中选择 Microsoft

    2026年3月20日
    4
  • PCB(进程控制块)讲解

    PCB(进程控制块)讲解PCB 进程控制块 实际是一个结构体 放在 sched h 文件中 Linux 下可以通过 whereissched h 命令查看具体路径该结构体主要包含 1 进程 id2 进程的状态 就绪 运行 挂起 停止 3 进程切换时需要保存和恢复的一些 CPU 寄存器寄存器放在 CUP 中 A 程序和 B 程序分时执行的时候 A 占用 CPU 执行一定时间 CPU 便被 B 占用了 然后又轮到 A 执行 A 的资源如寄存器如何恢复到挂起

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号