ip地址转换htonl的用法
说明
u_long PASCAL FAR htonl ( __in u_long hostlong);
htonl(将32位主机字符顺序转换成网络字符顺序)(用于IP的转换)
IP转换为数值
unsigned long StrIp4ToValue(const char* strIp)
{ //255.255.255.255char buf[16] = { 0 };strncpy_s(buf, strIp, 16);char *next_token1 = NULL;char* token = strtok_s(buf, ".", &next_token1);long ip[4] = { 0 };int i = 0;while (token&&i < 4){int nValue = atoi(token);ip[i] = nValue;i++;token = strtok_s(NULL, ".", &next_token1);}unsigned long ipValue = ip[3] + (ip[2] << 8) + (ip[1] << 16) + (ip[0] << 24);return ipValue;
}
使用htons,htonl
u_long nHost = StrIpToValue("192.168.8.24")sockaddr_in mySockaddr = {0};
mySockaddr.sin_family = AF_INET;
mySockaddr.sin_port = htons(nPort);
mySockaddr.sin_addr.S_un.S_addr = htonl(nHost);
// 等价于
mySockaddr.sin_addr.s_addr = inet_addr("192.168.8.24");
ip地址转换htonl的用法相关推荐
- python整数与IP地址转换
我们有时会将一个整数与IP地址进行互换,用python代码实现很简单 将一个整数如2000000,变为一个IP地址的方式 >>> import socket >>> ...
- 1.socket编程:socket编程,网络字节序,函数介绍,IP地址转换函数,sockaddr数据结构,网络套接字函数,socket相关函数,TCP server和client
1 Socket编程 socket这个词可以表示很多概念: 在TCP/IP协议中,"IP地址+TCP或UDP端口号"唯一标识网络通讯中的一个进程,"IP 地址+端 ...
- ip地址转换数字函数 iton_DataLakeAnalytics: 解析IP地址对应的国家城市的函数
Data Lake Analytics 作为云上数据处理的枢纽,最近加入了通过IP地址查找对应的国家.省份.城市.ISP的函数, 今天带大家体验一下. 函数详细介绍 本次一共添加了下面这些函数: ip ...
- 【Linux网络编程学习】预备知识(网络字节序、IP地址转换函数、sockaddr数据结构)
此为牛客Linux C++课程和黑马Linux系统编程笔记. 1. 网络字节序 我们已经知道,内存中的多字节数据相对于内存地址有大端和小端之分. 磁盘文件中的多字节数据相对于文件中的偏移地址也有大端小 ...
- linux的基础知识——网络字节序转化,ip地址转换函数,sockaddr数据结构
1.网络字节序 TCP/IP协议规定,网络数据流采用大端字节序,即低地址高字节.为了使网络程序具有可移植性,使得同样的C代码在大端和小端计算机上编译后都能正常运行,可以调用以下库函数做网络字节序和主机 ...
- 利用函数进行ip地址转换
inet_addr.inet_ntoa.inet_pton.inet_ntop用法 inet_addr(): inet_ntoa(): inet_pton(): inet_ntop(): 运行实例 1 ...
- python整数与IP地址转换 [转]
原文地址为: python整数与IP地址转换 [转] 我们有时会将一个整数与IP地址进行互换,用python代码实现很简单 将一个整数如2000000,变为一个IP地址的方式 >>> ...
- 实验:IP地址转换(超好用的substr();)
首先介绍c++中超好用的截取部分字符串的函数substr(); 头文件为#include<string> 函数原型: string substr(int pos = 0,int n ) c ...
- 快手,字节面试题,将IP地址转换成整数类型,再转换回来。C++代码
题目描述 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成 一个长整数. 举例:一个ip地址为10.0.3.193 每段数字 ...
最新文章
- 如何从sdcard读取文件
- 机器学习案例:scikit-learn实现ebay数据分析
- 关于realarm S5P4418的u-boot显示内存大小问题解决方法
- oracle 学习——巨人的肩膀
- 在CDI应用程序中使用@Alternative
- MongoDB通配符索引
- DotNetty网络通信框架学习
- 各种投影灯泡的清零方法!
- 深入浅出通信原理知识点10
- Python 解决 网易云.ncm格式 还原 无损音乐格式
- 【蓝桥杯试题】盾神与困难数独
- 租用游艇,Clear And Present Danger S,Heat Wave G,单源最短路径(弱化版)
- matlab 图中图
- 开机时自动启动的AutoHotkey脚本
- 1年赋能100家环保机构,阿里云发布“青山绿水”计划
- 顶级赛事!2021 CCF大数据与计算智能大赛重磅开赛!
- 计算机网络启动慢,电脑开机后网络连接图标出现的太慢了,2分钟才能出现,不出现什么都做不了,怎么办?如果手动设置...
- 拜耳启动营养补充计划,到2030年每年帮助全球5000万人获得维生素和矿物质
- Alpha测试和Beta测试的区别
- android编程root启动指定app,取之有道——巧用Root权限 启动其他APP中的Activity
热门文章
- [misc]T型知识实践结构的力量
- html5indexeddb排序,html5的indexedDB数据库操作实例
- C++字符串内数字统计
- 价值7000万的商业模式,羊毛出在狗身上,猪来买单
- 北京信息科技大学计算机专业强不强,北京信息科技大学怎么样 2021年全国排名多少...
- 如何有效地执行代码审查_使用这些有效的代码审查指南创建合理的办公环境
- javaIO流之缓冲流
- 怎样在拼打日语汉字时,在字上同时显示假名
- Pytorch CPU Tensor与GPU Tensor的运算速度对比测试
- 两种三角形的打印方法