inet_addr 和inet_ntoa函数作用
来源:互联网 发布:mac版pscc2017破解教程 编辑:程序博客网 时间:2024/06/08 10:44
我们使用socket进行通信的时候,我们需要指定三个元素:通信域(地址族)、IP地址、端口号,这三个元素由SOCKADDR_IN结构体定义,为了简化编程一般将IP地址设置为INADDR_ANY,如果需要使用特定的IP地址则需要使用inet_addr 和inet_ntoa完成字符串和in_addr结构体的互换,in_addr是SOCKADDR_IN成员,其代表IP地址。
inet_add函数声明如下:
unsigned long inet_addr(const char* cp);
参数:
cp代表点分十进制的IP地址,如1.2.3.4
inet_ntoa 函数声明如下:
char* inet_ntoa(struct in_addr in);参数:
in代码in_addr的结构体,其结构体如下:
struct in_addr { union { struct { UCHAR s_b1,s_b2,s_b3,s_b4; } S_un_b; struct { USHORT s_w1,s_w2; } S_un_w; ULONG S_addr; } S_un;};
函数使用代码如下:
SOCKADDR_IN sock;sock.sin_family = AF_INET;//将字符串转换为in_addr类型sock.sin_addr.S_un.S_addr = inet_addr("192.168.1.111");sock.sin_port = htons(5000);//将in_addr类型转换为字符串printf("inet_ntoa ip = %s\n",inet_ntoa(sock.sin_addr));
结果输出:
inet_ntoa ip = 192.168.1.111
1 0
- inet_addr 和inet_ntoa函数作用
- 函数inet_addr和inet_ntoa
- 函数inet_addr和inet_ntoa
- 函数inet_addr和inet_ntoa
- 函数inet_addr和inet_ntoa
- inet_ntoa 和inet_addr函数
- 函数inet_addr和inet_ntoa
- 函数inet_addr和inet_ntoa-linux
- inet_addr 函数 和 inet_ntoa 函数 自实现
- inet_aton、inet_addr、inet_ntoa函数
- inet_addr()和inet_ntoa()
- inet_addr和inet_ntoa
- inet_ntoa 和 inet_addr
- inet_addr 和inet_ntoa
- htonl(),htons(),inet_addr(),inet_ntoa()函数
- htonl(),htons(),inet_addr(),inet_ntoa()函数
- htonl(),htons(),inet_addr(),inet_ntoa()函数
- htonl(),htons(),inet_addr(),inet_ntoa()函数
- C++ 类对象内存分布
- PAT 1124. Raffle for Weibo Followers (20)
- 前端热门框架Vue.js入门篇
- Android 应用安全开发之浅谈加密算法的坑
- sensorservice代码阅读
- inet_addr 和inet_ntoa函数作用
- java之I/O模型!!!
- Freeline使用攻略
- NotImplementedError: Only the following pseudo-classes are implemented: nth-of-type.
- Snakes & Ladders
- 大三软件工程小项目-小技术集合-读取XML文件及运行外部程序
- javaScript事件
- [Android][SystemUI]navigationbar 3个虚拟键隐藏与显示
- Java基础:JDK、JRE、JVM的区别与联系