判断一个IP地址有效的另一种方法(isdigit)
isdigit是计算机C(C++)语言中的一个函数,主要用于检查其参数是否为十进制数字字符。
判断ip地址有效
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | int IsValidIPAddrStr( char *ipAddr) { unsigned int i, j, k; char tmpBuf[4]; if ( strlen (ipAddr) > 15) return (0); for (i = -1, k = 0; k < 4; k++) { memset (tmpBuf, 0, sizeof (tmpBuf)); for (++i, j = 0; (j < 3) && (i < strlen (ipAddr)); i++, j++) { if (ipAddr[i] == '.' ) // 遇到一个.,一节结束 break ; else { if (! isdigit (ipAddr[i])) // 包含非数字 return (0); else tmpBuf[j] = ipAddr[i]; } } if (j == 0) // 连续2个.间无数字 return (0); if (( atoi (tmpBuf) > 255) || ( atoi (tmpBuf) < 0)) return (0); // 大于255或小于0 if (k == 3) // 最后一节结束 break ; if (ipAddr[i] != '.' ) // 一节的结束符不是. return (0); } if ( strlen (ipAddr) != i) return (0); // 四节结束后,还有字符 else return (1); } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2021-01-19 ubuntu 安装wireshark
2021-01-19 Ubuntu16.04使用Qt Creator编译时报错“找不到 -lGL”之解决办法
2021-01-19 ubuntu qt5.9.2
2021-01-19 ubunut root账号登陆
2021-01-19 radvd
2021-01-19 彩屏sip电话机
2021-01-19 epon gpon