社区
C++ 语言
帖子详情
如何判断IP地址是不是合法的
llf_hust
2005-08-31 05:27:18
char p[256] = "192.168.0A.1";
int IsIp(char *p)//如何写一个算法判断给定的IP地址是不是合法的呀,大家给个思想呀
{
}
...全文
1412
4
打赏
收藏
如何判断IP地址是不是合法的
char p[256] = "192.168.0A.1"; int IsIp(char *p)//如何写一个算法判断给定的IP地址是不是合法的呀,大家给个思想呀 { }
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
XBox360
2005-08-31
打赏
举报
回复
我之前写过一个,但是总觉得不够好
先检查除了是否有‘.’及数字以外的字符
得到‘.’的个数
再检查每个‘.’之间的数是否在0-255之间
xiaocai0001
2005-08-31
打赏
举报
回复
这是 tarsen(tarsen) 写的一个IP检测
详见http://community.csdn.net/Expert/topic/4192/4192045.xml?temp=.6107447
也许对你有点参考价值
bool Cip::CipCheckIp(char *str)//a rough check
{
int dot_count = 0;
int num_count = 0;
int num_val = 0;
while((*str))
{
if((*str) != '.')
{
if((*str) <= '9' && (*str) >= '0')
{
++ num_count;
num_val = num_val * 10 + (*str) - '0';
}
else
return false;
}
else
{
++ dot_count;
if(num_count < 1 || num_count > 4 || num_val < 0 || num_val >255)
//check if the current segment is 1~3 numbers
return false;
num_count = 0;
num_val = 0;
}
++ str;
}
if(dot_count != 3)
return false;
return true;
}
foochow
2005-08-31
打赏
举报
回复
扫描数据,如果存在0---9和'.'之外的字符则不合法,将数据按'.'进行分割,如果分割结果不是四段,则不合法.如果四段中的数据均小于256,则是合法的...
xiaocai0001
2005-08-31
打赏
举报
回复
你得首先明白,哪些形式的IP是不合法的
常见的如:
IP地址中含有除 . 0-9 这11个字符以外的字符
IP长度不对 有效IP长度在7-15个字符
IP地址分节错误 IP地址中应该有三个 .
IP地址范围错误 每节的数字应该在 0-255之间
... ...
把这些东西想清楚了,然后检测起来,才是有的放矢~~~
判断
一个
IP地址
是否
合法
要求:1)以命令行格式运行:ip_test subnet/mask ip_addr 其中ip_test为程序名;subnet为子网号;mask是一个数值,代表子网掩码连续1的个数;ip_addr是要测试的
ip地址
。 例如,要测试的
IP地址
为202.113.16.10,子网号为202.113.16.0,子网掩码为255.255.255.0 2)
判断
subnet和ip_addr的
合法
性(注意考虑全面,比如以下IP均为不
合法
123..2.1 123.23$.2.1 123.12345.2.1 123.23.45.2.1 3)
判断
掩码的
合法
性 4) 在
IP地址
合法
的前提下,
判断
ip_addr是否属于子网subnet 5)输出命令行中的IP是否
合法
,掩码是否
合法
(可适当给出不
合法
原因)以及ip_addr
java代码
判断
一个
IP地址
是否
合法
,并
判断
该地址是否属于一个给定的子网。
1)以命令行格式运行:ip_test subnet/mask ip_addr 其中ip_test为程序名;subnet为子网号;mask是一个数值,代表子网掩码连续1的个数;ip_addr是要测试的
ip地址
。 例如,要测试的
IP地址
为202.113.16.10,子网号为202.113.16.0,子网掩码为255.255.255.0 2)
判断
subnet和ip_addr的
合法
性(注意考虑全面,比如以下IP均为不
合法
123..2.1 123.23$.2.1 123.12345.2.1 123.23.45.2.1 3)
判断
掩码的
合法
性 4) 在
IP地址
合法
的前提下,
判断
ip_addr是否属于子网subnet 5)输出命令行中的IP是否
合法
,掩码是否
合法
(可适当给出不
合法
原因)以及ip_add
IP地址
的
合法
性及子网
判断
以前大学时的课程设计(java实现),写得比较烂,没注释,请多多原谅(适合人群:初学者参考) 功能:
判断
子网和ip的
合法
性,
判断
掩码的
合法
性,在
IP地址
合法
的前提下,
判断
ip是否属于子网。 内附详细文档
Shell脚本
判断
IP地址
是否
合法
的方法
使用shell校验
IP地址
合法
性 使用方法: 代码如下:[root@yang python]# bash check_ip.sh
IP地址
执行结果:返回值0校验
合法
,非0不
合法
。shell代码: 代码如下:[root@yang python]# vi check_ip.sh #!/usr/bin/shCheckIPAddr(){echo $1|grep “^[0-9]\{1,3\}\.\([0-9]\{1,3\}\.\)\{2\}[0-9]\{1,3\}$” > /dev/null; #
IP地址
必须为全数字 if [ $? -ne 0 ] then
IP地址
的
合法
性及子网
判断
(试验报告,代码,题目)原创C++
IP地址
的
合法
性及子网
判断
(试验报告,代码,题目)原创。 可能会出一些问题,应为是在CMD下运行,但我每一个函数都有注释,很容易修改。 在VS2008下编译成功
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章