数据结构

下面我们要讨论使用套接口编写程序可能要用到的数据结构。

首先是套接口描述符。一个套接口描述符只是一个整型的数值: i n t。

第一个数据结构是struct sockaddr,这个数据结构中保存着套接口的地址信息。

struct sockaddr {

unsigned short sa_family; /* address family, AF_xxx */

char sa_data[14]; /* 14 bytes of protocol address */

} ;

sa_family 中可以是其他的很多值,但在这里我们把它赋值为“ AF_INET”。sa_data包括一个目的地址和一个端口地址。

你也可以使用另一个数据结构sockaddr_in,如下所示:

struct sockaddr_in {

short int sin_family; /* Address family */

unsigned short int sin_port; /* Port number */

struct in_addr sin_addr; /* Internet address */

unsigned char sin_zero[8]; /* Same size as struct sockaddr */

} ;

这个数据结构使得使用其中的各个元素更为方便。要注意的是sin_zero应该使用bzero() 或者memset ( )而设置为全0。另外,一个指向sockaddr_in数据结构的指针可以投射到一个指向数据结构sockaddr的指针,反之亦然。

linux+广播程序,Linux系统下广播程序制作介绍(上) (3)相关推荐

  1. linux daemon步骤,编写Linux系统下Daemon程序的方法步骤

    编写Linux系统下Daemon程序的方法步骤 一.引言 Daemon程序是一直运行的服务端程序,又称为守护进程. 本文介绍了在Linux下编写Daemon程序的步骤,并给出了例子程序. 二.Daem ...

  2. 计算机切换输入法Word关闭,win7旗舰版64位系统下word程序无法切换输入法的解决方法...

    现如今使用win7系统的用户越来越多.在使用的过程中也会遇到各式各样的故障问题.当我们在win7旗舰版64位系统里面编辑word文档的时候,突然发现自己原本使用的好好的输入法突然无法切换了,检查了一下 ...

  3. win10c语言0xc0000142,windows10系统下应用程序无法正常启动0xc0000142

    windows10系统下应用程序无法正常启动0xc0000142 应用程序无法正常启动0xc0000142解决方法:针对win10系统使用久了,win10系统提示应用程序无法正常启动(0xc00001 ...

  4. 用计算机弹下课铃声,智能广播打铃系统(校园广播上下课铃声)V7.2.1 免费版

    智能广播打铃系统(校园广播上下课铃声)是专为校园设计的广播铃声定时管理工具,管理员可以用这个软件来精准控制校园的铃声和歌曲,还具备多种控制方案,让管理定时更加高效. 软件特点: 1.定时自动播放音乐. ...

  5. 服务器双系统快捷键,Mac/Win7双系统下截屏快捷键介绍

    由于苹果电脑采用的是mac系统,使用的用户相对较少,不少购买苹果电脑的朋友经常会遇到一些截图困扰,接下来是小编为大家收集的Mac/Win7双系统下截屏快捷键介绍,希望能帮到大家. Mac/Win7双系 ...

  6. vnc连接linux使用教程_linux系统下vnc 的配置和使用方法

    linux系统下vnc 的配置和使用方法 发布时间:2013-06-01 17:35:28   作者:佚名   我要评论 VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer):另 ...

  7. linux top交叉编译_Linux 系统下ARM Linux交叉编译环境crosstool工具

    Linux系统下ARM Linux交叉编译环境的建立目前流行的有三种途径. 一.使用别人编译好的开发工具链本文引用地址:http://www.eepw.com.cn/article/201611/31 ...

  8. Linux Ubuntu 16.04系统下可用的Windows应用

    众所周知,Linux系统下的生态环境不是很好,很多可以在Windows 10系统下运行的 软件都不能在Linux下运行,那么接下来为大家推荐部分可以应用的软件: A.Google-Chrome. 最简 ...

  9. Linux与Windows双系统下的Grub引导管理器安装。

    转载自品略图书馆 http://www.pinlue.com/article/2020/04/0710/1410126301133.html 大多数人日常工作所用的系统是Windows,如果想尝试或者 ...

  10. h16网卡linux驱动下载,【驱动】在LINUX(ubuntu)系统下安装RTL8111/8168网卡驱动程序(技嘉H61主板)...

    [驱动]在LINUX(ubuntu)系统下安装RTL8111/8168网卡驱动程序(技嘉H61主板) 4年前 (2017-07-15)    作者:Jiaozn    分类:Linux    阅读次数 ...

最新文章

  1. 传递字符串_一道经典面试题:字符串在Java中如何通过“引用”传递
  2. [codevs 1249] 多边形的面积
  3. zabbix_get 命令介绍
  4. NOj 720项目安排
  5. linux vlc流媒体服务器,vlc media server rtsp 流媒体服务器搭建成功经验分享
  6. Java 内存泄露总结
  7. 51单片机1602、18B20电子钟--C51源代码
  8. 《C++游戏开发》笔记十三 平滑过渡的战争迷雾(一) 原理:Warcraft3地形拼接算法...
  9. Ubutu: mysql + jdk + tomcat installation
  10. Julia :PyPlot的plot_date
  11. 在开放环境的步态识别:一个基准(三)
  12. windows 清理助手 3.1
  13. 北大计算机系赖陆程,北大计算机系一年级学生彭某从五楼阳台上跳下。彭某曾是一个相当聪明...
  14. 二阶常微分方程(ODE)的打靶法(Shooting method),有限差分基础(python)
  15. 史上最牛老丈人,三个朝代全是自家人
  16. markdown如何调整行距_反Markdown试验:用Markdown的思维来使用Word
  17. php上传 io err,【Dz上传附件】解决Discuz Server(IO)Error问题
  18. [情感分析的新方法]
  19. C语言 static用法
  20. 团队建设活动-巅峰故事

热门文章

  1. UE4如何解析命令行参数
  2. Express 中间件 body-parser 原理分析
  3. 贝壳金控赵文乐:基于 Spring Cloud 的服务治理实践
  4. iOSQuart2D绘图之UIImage简单使用
  5. 思科中国创新中心落户广州 打造年产值超千亿元万物互联“智慧城市”
  6. Apache shiro
  7. 最近让我焦灼的四个问题(有解)
  8. linux -对称加密、 非对称加密
  9. 用C#实现用免费smtp服务器(GMail)发邮件(转)
  10. [php]php设计模式 Facade(外观模式)