上一篇文章中我们向大家介绍了关于嵌入式Linux系统下如何制作QPF字库的问题,相信大家肯定都有所了解了吧!接下来我们要继续给大家介绍一下Linux系统下的socket address结构了,下面大家就跟着我们txwb网吧联盟的网吧系统栏目一起去看看吧!
据了解Linux系统下的网络通信程序是一定要和一个结构打交道的,那就是socket address。比如bind、connect等等函数都要使用socket address结构。其实在linux下针对于不同的socket domain定义了一个通用的地址结构struct sockaddr,它的具体定义为:
{
unsignedshortintsa_family;
charsa_data[14];
}structsockaddr
其中,sa_family为调用socket()函数时的参数domain参数,sa_data为14个字符长度存储。针对于不同domain下的socket,通用地址结构又对应了不同的定义,例如一般的AF_INETdomain下,socketaddress的定义如下:
structsockaddr_in
{
unsignedshortintsin_family;
uint16_tsin_port;
structin_addrsin_addr;
unsignedcharsin_zero[8];//未使用
}
structin_addr
{
uint32_ts_addr;
}
当socket的domain不同于AF_INET时,具体的地址定义又是不同的,但是整个地址结构的大小、容量都是和通用地址结构一致的。
那么关于Linux系统下的socket address结构的相关内容我们就介绍完了,大家如果还有不明白的地方可以去本站的网吧系统栏目去查找,如果找不到解决办法,可以留言一起讨论,当然如果大家有什么好的资料也可以和我们一起分享哦!
本文来源:网络整理 作者:佚名