zoukankan
html css js c++ java
用C语言将二进制转换为IP地址
根据需要将任意32位二进制转换为IP地址。
输入:11111111
输出:255.0.0.0
思路:将输入的二进制数以每8个为一个单位转化为十进制 。
#include <stdio.h> int bin_dec(int x, int n) //自定义函数将二进制数转换为10进制 { if(n == 0) { return 1; } return x * bin_dec(x, n-1); //递归调用bin_dec()函数 } int main(void) { int i; int ip[4] = {0}; char a[33]; printf("请输入二进制数: \n"); scanf("%s", a); for(i=0; i<8; i++) { if(a[i] == '1') { ip[0] += bin_dec(2, 7-i); } } for(i=8; i<16; i++) { if(a[i] == '1') { ip[1] += bin_dec(2, 15-i); } } for(i=16; i<24; i++) { if(a[i] == '1') { ip[2] += bin_dec(2, 23-i); } } for(i=24; i<32; i++) { if(a[i] == '1') { ip[3] += bin_dec(2, 31-i); } if(a[i] == '\0') { break; } } printf("IP:\n"); printf("%d.%d.%d.%d\n", ip[0], ip[1], ip[2], ip[3]);//输出IP地址 return 0; }
查看全文
相关阅读:
Redis常用数据类型及应用场景之Set
Redis常用数据类型及应用场景之List
Redis常用数据类型及应用场景之Hash
exists & not exists
oracle 中 dblink 的简单使用
DockerCompose之数据卷Volume
DockerCompose之常见编排脚本
160308-学习State Pattern Actor
12.3-框架维护
12.2-机器人协作系统
原文地址:https://www.cnblogs.com/linuxer/p/2441220.html
最新文章
05:MySQL数据处理与函数笔记5
04:MySQL正则表达式笔记4
03:MySQL查询操作笔记3
02:MySQL基础2
01:MySQL基础-1
python基础(目录篇)
2020年已经过去一半了!!
Unittest框架/DDT数据驱动
接口中导入excel测试数据(详)
写blog方式方法
热门文章
linux前后台进程切换
docker国内镜像源
wsl相对位置
记一次定位线上故障。线程维度
记一次线上数据库某个字段varchar长度不足,被自动截取情况
python dict
zsh配置备份
spring相关面试题
面试题
Redis常用数据类型及应用场景之ZSet
Copyright © 2011-2022 走看看