Linux网络编程之IP地址转换为无符号整数的方法
Linux网络编程之IP地址转换为无符号整数的方法,代码如下:(没考虑异常输入)
#include <stdio.h>
#include <string.h>
#include <stdlib.h>/* 处理IP字符串 */
unsigned int aton(const char str[])
{unsigned int rs = 0;char *p = (char *)str;p = strtok(p, ".");while(p != NULL){rs = (rs << 8) | atoi(p);p = strtok(NULL, ".");}return rs;
}/* 打印二进制 */
void print(unsigned int rs)
{if(rs < 2){printf("%d", rs);return;}print(rs / 2);printf("%d", rs % 2);
}int main(void)
{unsigned int rs;char ip[16];scanf("%s", ip);/* 处理IP字符串 */rs = aton(ip);/* 打印十进制 */printf("%u\n", rs);/* 打印二进制 */print(rs);return 0;
}
Linux网络编程之IP地址转换为无符号整数的方法相关推荐
- 【Python基础】网络编程之IP地址
[Python基础]网络编程之IP地址 文章目录 IP 地址的介绍 1. IP 地址的概念 2. IP 地址的表现形式 2. IP 地址的作用 3. 查看 IP 地址 4. 检查网络是否正常 3. 小 ...
- Java网络编程之IP地址和InetAddress类
Java语言的优势之一是Java程序能访问网络资源.Java提供一系列的类支持Java程序访问网络资源. TCP/IP协议和IP地址 为了进行网络通信,通信双方必须遵守通信协议.目前最广泛使用的是TC ...
- linux网络编程之IP协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)和TCP、UDP协议头结构总结
首先声明,这篇博客是几篇博客转载然后总结在一起的,只当是学习笔记,不在意是什么原创和转载了,学到东西就好. 1.IP协议首部格式(IP协议处余网络层) IP数据报首部图片格式: 最高位在左边,记为0 ...
- Linux网络编程之sockaddr与sockaddr_in,sockaddr_un结构体详细讲解
Linux网络编程之sockaddr与sockaddr_in,sockaddr_un结构体详细讲解 (1)sockaddr struct sockaddr { unsigned short sa_ ...
- 网络编程之:IP的ULONG方式字符串方式的相互转化
网络编程之:IP的ULONG方式字符串方式的相互转化 // IpAndStr.cpp : Defines the entry point for the console application. // ...
- Linux网络编程之TCP状态转移
Linux网络编程之TCP状态转移 一.TCP状态转移时序 二.半关闭及shutdown函数 一.TCP状态转移时序 TCP状态转移图: netstat -apn | grep client 查看客户 ...
- linux网络编程之Socket编程
(1)socket套接字 1)在linux环境下,socket用于表示进程间网络通信的特殊文件类型,其本质是内核借助缓冲区形成的伪文件(不占磁盘空间,除此之外还有二进制文件,管道,字符文件). 2)伪 ...
- Linux网络编程之sockaddr与sockaddr_in,sockaddr_un分析
sockaddr struct sockaddr { unsigned short sa_family; /* address family, AF_xxx */ char sa_data[14]; ...
- 【Linux网络编程】IP地址介绍
什么是 IP 地址 IP 地址(Internet Protocol Address)也称为网间地址.网际地址.IP地址是指互联网协议地址(英语:Internet Protocol Address,又译 ...
最新文章
- python and or 与 | 的比较
- Linux基础入门 | 目录结构
- 交易中台架构设计:海量并发高扩展,新业务秒级接入
- vue本地项目静态资源管理
- 完整的WebApplication JSF EJB JPA JAAS –第2部分
- 简单的11步在Laravel中实现测试驱动开发
- 加密模式 openssl sm4_OpenSSL/GmSSL 动态引擎
- element-ui 分页索引问题
- 密码协议(一)协议概述
- java请求第三方接口
- Udemy上Gephi教程笔记1
- IDEA控制台output中文乱码
- c语言人名首字母大写,关于字符串:如何在C中大写名字和姓氏的首字母?
- 树莓派 arch linux,给树莓派安装ArchLinux
- Run Run Run
- ECharts 中的事件和行为
- 在观察研究中减少数据偏倚:倾向评分(一)
- Python毕业设计开题报告职业推荐系统
- 中间件监控和告警方案
- 毕业论文的流程图怎么画
热门文章
- visual studio visual studio 2005 快捷键大全
- 全网最新 Skywalking 6.1.0部署进k8s 包含springcloud测试用例
- 关于华为x2中的外置SDCard的使用
- 【C语言】接收字符,大小写字符相互转换后输出,数字不输出
- URAL 1721 Two Sides of the Same Coin(二分图匹配,输出匹配对象)
- 算法导论chapter6 堆排序的代码
- android helloworld程序
- Windows定时删除某天前文件的批处理脚本
- 视频传输专线解决方案架构特点——Vecloud
- 什么是加密?—Vecloud微云