socket 主机地址相关的函数

 

#include <arpa/inet.h>
int inet_aton (const char *name, struct in_addr *addr)

  将ipv4地址从数字点的形式转化为二进制数据,存储在struct in_addr中。如果给的地址无效,返回0

uint32_t inet_addr (const char *name)

  和inet_aton一样,将存储在字符串里的数字点形式的IPv4地址转化为二进制数据。输入地址无效会返回INADDR_NONE,实际值为255.255.255.255

uint32_t inet_network (const char *name)

  将数字点形式的Ipv4地址按主机字节顺序转化使用网络地址????

char * inet_ntoa (struct in_addr addr)

和上面相反:struct in_addr 到数字点形式的IPv4地址。

struct in_addr inet_makeaddr (uint32_t net, uint32_t local)
//使用网络号和主机号构成IPv4地址。对无类型的地址不起作用。
 uint32_t inet_netof (struct in_addr addr)
//返回IPv4地址的网络号
int inet_pton (int af, const char *cp, void *buf)
//将Internet 地址(IPv4或者IPv6)从可表示(textual) 转换到网络上的二进制格式
//af 指address_family,值必须是AF_INET或AF_INET6。
//cp 指向输入字符串,buf为输出。调者必须保证buf足够大。大小应该为struct in_addr 或者struct in6_addr
const char * inet_ntop (int af, const void *cp, char *buf, socklen_t len)
//和上一个函数功能相反。socklen_t len为buffer的长度。两个返回值出口:char *buf和return返回的buf的地址。
时间: 2024-08-26 16:55:37

socket 主机地址相关的函数的相关文章

linux系统socket通信编程详解函数

linux socket编程之TCP与UDP TCP与UDP区别 TCP---传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据.TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端. UDP---用户数据报协议,是一个简单的面向数据报的运输层协议.UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地.由于UDP在传输数据报前不用在客户和服

一起talk C栗子吧(第一百五十五回:C语言实例--获取socket通信地址)

各位看官们,大家好,上一回中咱们说的是socket通信地址系统调用的例子,这一回咱们说的例子是:获取socket通信地址 .闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们前面的章回中介绍了与套接字通信地址相关的系统调用.还是哪句话,光说不练,不是我们的风格,今天我就通过具体的代码来演示如何使用这些系统调用来获取套接字的通信地址. 下面是使用该函数的详细步骤及其代码.我通过代码+注释的方式展示给大家,以方便大家更加好地理解该函数的用法. char * host = "localh

一起talk C栗子吧(第一百五十四回:C语言实例--socket通信地址系统调用二)

各位看官们,大家好,上一回中咱们说的是socket通信地址系统调用的例子,这一回咱们继续说该例子.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在上一回介绍的通信地址系统调用有效地解决了数据存储方式的问题,不过,还有一个系统调用也可以解决这种问题,这一回我们将介绍该系统调用:getaddrinfo. 函数原型 该系统调用从其名字上看是用来获取地址的信息,这里的地址主要指套接字通信地址.它获取到的地址信息不需要进行字节序转换,我们可以直接用来进行套接字通信.不过,我们不能只看名字

python 之socket语法及相关

socket语法及相关 socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用[打开][读写][关闭]模式来操作.socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO.打开.关闭) socket和file的区别: file模块是针

一起talk C栗子吧(第一百五十三回:C语言实例--socket通信地址系统调用一)

各位看官们,大家好,上一回中咱们说的是计算机中大小端的例子,这一回咱们说的例子是socket通信地址的系统调用 .闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,我们在前面的章回中介绍了套接字的通信地址,这一回中我们将介绍操作套接字通信地址的系统调用.大家都知道套接字的通信地址与套接字的域有关,接下来,我们依据套接字的通信域分别进行介绍. AF_UNIX域的通信地址 AF_UNIX域的通信地址本质上是文件的目录,文件目录存储在本地计算机中,而且使用该域通信时,通信双方都位于同一台计算

WordPress ”无法发送电子邮件,可能原因:您的主机禁用了mail()函数“的解决办法

WordPress网站中出现 "无法发送电子邮件,可能原因:您的主机禁用了mail()函数"的情况一般都是因为所在主机环境不支持在线邮件收发功能导致,如果不支持的话,那么像类似 Newsletter.Contact Form 7 等需要用到邮件收发功能的插件就将无法使用.不过,对于这种问题,绝大多数的主机或服务器还是可以解决的,如果以下方法都尝试后还是无法解决邮件收发功能,那么就只能联系你的空间服务商来解决了. 检查空间是否支持 邮件收发 功能的方法 1. 非登录状态,访问网站后台登录

postgresql----网络地址类型和函数

本人对网络这块实在是搞不清楚,要是能有人推荐一下资料就好了!不知道有没有跟我一样呢?!所以在这里先贴一点从其他地方搞来的一些IPv4的东东. IPv4主要包括一下5类地址 A类: 0 7位 网络号 24位 主机号 B类: 1 0 14位 网络号 16位 主机号 C类: 1 1 0 21位 网络号 8位 主机号 D类: 1 1 1 0 28位 多播组号 E类: 1 1 1 1 0 27位 留待后用 由上表可以看出一个IPv4地址使用32位二进制表示,使用时写成4个十进制数,每个十进制占用8位,每个

win32 socket阻塞与非阻塞函数及设置

win32 socket中有些函数是默认阻塞的,比如accept(),send(),recv()等等,其中send()与recv()的阻塞概念与accept()的阻塞概念不同. send()与recv()只是完成数据的拷贝工作,即send()函数仅仅是将数据放到发送缓冲区中,至于实际的发送工作由网络协议完成:recv()函数仅仅是从接收缓冲区中读取数据,实际接收数据的操作由网络协议完成.send()的阻塞主要由发送数据填满发送缓冲区产生的,recv()的阻塞则是由接收缓冲区中没有数据可读引起的.

Scala中Zip相关的函数

在Scala中存在好几个Zip相关的函数,比如zip,zipAll,zipped 以及zipWithIndex等等.我们在代码中也经常看到这样的函数,这篇文章主要介绍一下这些函数的区别以及使用. 1.zip函数将传进来的两个参数中相应位置上的元素组成一个pair数组.如果其中一个参数元素比较长,那么多余的参数会被删掉.看下英文介绍吧: Returns a list formed from this list and another iterable collection by combining