分手快乐 发表于 2015-1-16 13:08:41

来一发sockaddr与sockaddr_in

每一个开发团队都对他的发行版做过测试后放出的.那些国际知名的大品牌更是如此。
structsockaddr{
  unsignedshortintsa_family;/*addressfamily,AF_xxx*/
  charsa_data;/*address*/
  };
  sa_family是地点家属,是“AF_xxx”的情势。常设为“AF_INET”,代表Internet(TCP/IP)地点族。
  sa_data是协定地点,由sa_family决意。假如sa_family=AF_INET,则sa_data就是sockaddr_in的sin_addr和sin_port。换句话说,这时候sockaddr能够看成sockaddr_in看。
  structsockaddr_in{
  shortintsin_family;/*Addressfamily*/
  unsignedshortintsin_port;/*Portnumber*/
  structin_addrsin_addr;/*Internetaddress*/
  unsignedcharsin_zero;/*tomakesamesizeasstructsockaddr*/
  };
  structin_addr{
  unsignedlongs_addr;
  };
  sin_family意义与sa_family同。
  sin_port存储端标语(利用收集字节按次)
  sin_addr存储IP地点,利用in_addr这个数据布局
  sin_zero是为了让sockaddr与sockaddr_in两个数据布局坚持巨细不异而保存的空字节。
  在in_addr布局体中,s_addr依照收集字节按次存储IP地点。
  sin_zero用来将sockaddr_in布局添补到与structsockaddr一样的长度,能够用bzero()或memset()函数将其置为零。指向sockaddr_in的指针和指向sockaddr的指针能够互相转换,这意味着假如一个函数所需参数范例是sockaddr范例时,你能够在函数挪用的时分将一个指向sockaddr_in的指针转换为指向sockaddr的指针;大概相反
</p>
要多google,因为我不可能,也不可以给你解答所有内容,我只能告诉你一些关键点,甚至我会故意隐瞒答案,因为在寻找答案的过程中。

透明 发表于 2015-1-18 10:11:29

随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。

只想知道 发表于 2015-1-25 12:47:03

学习Linux,应该怎样学,主要学些什么,一位Linux热心学习者,一段学习Linux的风云经验,历时十二个小时的思考总结,近十位网络Linux学习者权威肯定,为您学习Linux指明方向。

老尸 发表于 2015-2-2 22:08:44

对我们学习操作系统有很大的帮助,加深我们对OS的理解。?

admin 发表于 2015-2-8 12:42:18

不同于Windows?系统需要花钱购买,因为Linux的核心是免费的,自由使用的,核心源代码是开放的。

因胸联盟 发表于 2015-2-25 16:51:29

目前全球有超过一百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,RedhatLinux和DebianLinux是网络管理员的理想选择。

活着的死人 发表于 2015-3-15 19:43:19

为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。

再现理想 发表于 2015-3-22 04:07:50

我感觉linux的学习,学习编程~!~!就去学习C语言编程!!
页: [1]
查看完整版本: 来一发sockaddr与sockaddr_in