IP address转换的两个主要函数:inet_addr和inet_ntoa
IP地址有两种不同的格式:

1.将十进制点分形式转换为二进制形式:
int inet_addr(const char * strptr);
返回值:成功:32位二进制IP地址 失败:-1
struct sockaddr_in serveraddr;
serveraddr.sin_addr.s_addr = inet_addr(“192.168.1.100”);
2.将二进制形式转换成十进制点分形式字符串:
char * inet_ntoa(struct in_addr in);
struct sockaddr_in serveraddr;
printf("%s\n",inet_ntoa(serveraddr.sin_addr));

#if 0
#define IPV4(a,b,c,d) ((a<<0)|(b<<8)|(c<<16)|(d<<24))
unsigned int value=IPV4(127,0,0,1);
in_addr_t ip;
memcpy(&ip,&value,sizeof(value));
printf(“the ip value is %s”,inet_ntoa(((struct in_addr)&ip)));
#endif
3.新型网路地址转化函数inet_pton和inet_ntop
#include <arpe/inet.h>
int inet_pton(int family, const char *strptr, void *addrptr); //将点分十进制的ip地址转化为用于网络传输的数值格式
返回值:若成功则为1,若输入不是有效的表达式则为0,若出错则为-1

const char * inet_ntop(int family, const void *addrptr, char *strptr, size_t len); //将数值格式转化为点分十进制的ip地址格式
返回值:若成功则为指向结构的指针,若出错则为NULL

ip address转换相关推荐

  1. python整数与IP地址转换

    我们有时会将一个整数与IP地址进行互换,用python代码实现很简单 将一个整数如2000000,变为一个IP地址的方式 >>> import socket >>> ...

  2. 1.socket编程:socket编程,网络字节序,函数介绍,IP地址转换函数,sockaddr数据结构,网络套接字函数,socket相关函数,TCP server和client

     1  Socket编程 socket这个词可以表示很多概念: 在TCP/IP协议中,"IP地址+TCP或UDP端口号"唯一标识网络通讯中的一个进程,"IP 地址+端 ...

  3. Windows Mobile,用C#更改网络连接(SSID、IP Address、Subnet Mask、Gatew... (转)

    前几天在做一个改变PDA无线网络连接的SSID和IP的功能是发现了一个好东西 OpenNETCF Framework 使用OpenNETCF.Net包,实现了任意改变PDA无线网络连接的功能. 并且不 ...

  4. 【Linux网络编程学习】预备知识(网络字节序、IP地址转换函数、sockaddr数据结构)

    此为牛客Linux C++课程和黑马Linux系统编程笔记. 1. 网络字节序 我们已经知道,内存中的多字节数据相对于内存地址有大端和小端之分. 磁盘文件中的多字节数据相对于文件中的偏移地址也有大端小 ...

  5. linux的基础知识——网络字节序转化,ip地址转换函数,sockaddr数据结构

    1.网络字节序 TCP/IP协议规定,网络数据流采用大端字节序,即低地址高字节.为了使网络程序具有可移植性,使得同样的C代码在大端和小端计算机上编译后都能正常运行,可以调用以下库函数做网络字节序和主机 ...

  6. 第22节 NAT——实现公私有IP地址转换

    NAT 1 NAT概述 1.1 IP地址概述 1.2NAT概述 2 NAT分类 2.1 静态NAT 2.2 动态NAT 2.3 PAT 2.4 静态PAT 3 NAT命令 3.1 定义内外网接口 3. ...

  7. python ip地址转换

    将ip地址转换成long 和将long转换成ip #!/usr/bin/pythonimport socket, struct def ip2long(ip):return struct.unpack ...

  8. IP地址(IP Address)

    IP Address在网络中,通信节点都需要一个IP地址 以点分十进制表示,有32位二进制构成(大约43亿) 分为两个部分:网络位和主机位 网络位:代表IP地址所属的网段 主机位:代表网点上的某个节点 ...

  9. C语言ip地址转换成十六进制,在C ++中将IP地址转换为十六进制的程序

    使用输入作为IP地址值给出,任务是将给定IP地址表示为其十六进制等效项. 什么是IP地址 IP地址或Internet协议是一个唯一编号,用于唯一描述您连接到网络的硬件.Internet是指通过网络和协 ...

最新文章

  1. ubuntu中文wiki
  2. 新学期伊始,同学们就开始为十六届智能车竞赛出谋划策了
  3. 微信支付 统一下单 字段 body 为中文时 报【签名错误】解决方案(C# SDK)
  4. Oracle show 命令学习
  5. 【译】Celeste 手感的 10 个设计细节
  6. Mybatis源码:Cache 装饰器模式
  7. apache php的日志在哪里,PHP在哪里存储错误日志? (php5,apache,fastcgi,cpanel)...
  8. Java成神之路——volatile是什么?
  9. 货物配送问题的matlab,免疫算法求解配送中心选址问题matlab代码
  10. CCD的基本的基本知识介绍(转载)
  11. jquery's json url
  12. 20190917:(leetcode习题)将有序数组转换为二叉搜索树
  13. PHP中获取CHECKBOX提交的内容及checkbox全选
  14. pxe启动虚拟机过程记录
  15. mysql etimedout_ETIMEDOUT
  16. 网易花19亿买地,要在上海建总部大楼,团队至少2000人
  17. 今天是我的生日,也是我的离职日!
  18. 51822 proximity
  19. js后代选择器_后代选择器和子元素选择器的区别
  20. STM32F103 GPIOA->CRL=0XFFF0FFFF配置端口方向

热门文章

  1. 用php打出2020年是庚子鼠年,2020是庚子金鼠年 说说鼠的那些事
  2. 如何修改3D模型的原子属性
  3. Web前端之布局模型
  4. 腾讯汤道生:未来将投入100亿资源为中小企业提供SaaS产品及方案
  5. k8s NoSchedule k8s 设置污点 NoExecute有点复杂 移除节点 drain和不可调度cordon
  6. java制作局域网聊天器_基于Java的局域网聊天工具
  7. 于博士Cadence教程内容目录
  8. 别坐在金矿上捡垃圾:给管理者的10条建议
  9. SAS学习第9章:卡方检验之适合性检验与独立性检验
  10. Azure China (11) 使用Azure China Storage Public Blob