判断一个字符串是否为合法ip地址(ipv4)
来源:互联网 发布:淘宝上买被子靠谱吗 编辑:程序博客网 时间:2024/05/16 10:19
1.判断字符串是否形如“192.168.1.1”
2.字符串两端含有空格视为合法ip,形如“ 192.168.1.1 ”
3.字符串中间含有空格视为非法ip,形如“192.168. 1.2”
4.字符串0开头视为不合法ip,形如192.168.01.1
5.字符串0.0.0.0视为合法ip
BOOL isIPAddressValid(const char *psAddress){ bool bDegital;int len = 0;int index = 0; int nDots = 0; int i, j;char *pIPbuf;const char *pTemp = psAddress; while(*pTemp != '\0') { if( *pTemp == '.') {if(*(pTemp+1) == '.') {return FALSE;}nDots++; }pTemp++; } if( nDots != 3 ) {return FALSE; }pTemp = psAddress; len = strlen(psAddress);pIPbuf = new char[len+1];for(i=0; i<4; ++i) { index = 0;ZeroMemory(pIPbuf, len+1);while(*pTemp != '\0') { if(*pTemp == '.') {break; } pIPbuf[index] = *pTemp; pTemp++; index++; } if(index == 0 || atoi(pIPbuf) < 0 || atoi(pIPbuf) > 255) {delete pIPbuf;return FALSE;}bDegital = false;for(j=0; j<index; j++) {if(!((pIPbuf[j] >= '0')&&(pIPbuf[j] <= '9'))) {if(pIPbuf[j] == ' ') {if(i == 0 && bDegital) {delete pIPbuf;return FALSE;} else if(i == 3) {if((j+1) < index) {if((pIPbuf[j+1] >= '0')&&(pIPbuf[j+1] <= '9')) {delete pIPbuf;return FALSE;}}} else {delete pIPbuf;return FALSE;}} else {delete pIPbuf;return FALSE;} } else {bDegital = true;if(index > 1 && pIPbuf[0] == '0') {delete pIPbuf;return FALSE;}}}if(*pTemp !='\0') {pTemp++; }} delete pIPbuf;printf("valid ip!\n");return TRUE; }
- 判断一个字符串是否为合法ip地址(ipv4)
- (java)判断一个字符串是否是合法的ipv4地址
- 判断一个字符串是否是合法IP地址
- python实现判断一个字符串是否是合法IP地址
- 【Python】判断一个字符串是否是合法IP地址
- 数字字符串是否为合法IP地址
- 判断字符串是否为合法ip
- 判断一个字符串的ip是否是IP合法的ip地址
- 判断一个字符串的ip是否是IP合法的ip地址
- 判断输入的字符串是否为合法IP地址的程序
- C语言判断给定的字符串是否为合法的ip地址
- C# 判断IP格式是否正确,字符串类型IPV4地址
- 如何判断一个字符串是否为正确的IP地址
- shell 函数实现检测字符串是否为合法的 IPv4 地址
- 判断某个字符串是不是一个合法的IP地址
- 判断字符串是否为IP地址。
- c# 判断字符串是否为IP地址
- 判断字符串是否为IP地址
- 『ANDROID』学习ANDROID
- Python包管理工具setuptools详解
- C++调用DLL方法
- C/C++获取当前函数名及所在行行数
- Ext.ux.TabCloseMenu插件的使用(TabPanel右键关闭菜单) 示例
- 判断一个字符串是否为合法ip地址(ipv4)
- 虚拟机下的Linux不能上网
- CUDA编程札记
- python数据类型和3个重要函数
- 补一个Ext3.2综合应用的例子
- MFC程序唯一运行判断(只能运行一个实例)
- 【巧破网络限制 重享网络自由】
- Linux添加虚拟网卡
- PK FK 命令小记