C语言 IP地址合法性判断 去除字符串首尾空格
1、c语言地址合法判断
bool IsIPaddress_standard(const char* pszIPAddr)
{if (!pszIPAddr) return false; //若pszIPAddr为空 char IP1[100],cIP[4]; int len = strlen(pszIPAddr); int i = 0,j=len-1; int k, m = 0,n=0,num=0; //去除首尾空格(取出从i-1到j+1之间的字符): while (pszIPAddr[i++] == ' '); while (pszIPAddr[j--] == ' '); for (k = i-1; k <= j+1; k++) { IP1[m++] = *(pszIPAddr + k); } IP1[m] = '\0'; char *p = IP1; while (*p!= '\0') { if (*p == ' ' || *p<'0' || *p>'9') return false; cIP[n++] = *p; //保存每个子段的第一个字符,用于之后判断该子段是否为0开头 int sum = 0; //sum为每一子段的数值,应在0到255之间 while (*p != '.'&&*p != '\0') { if (*p == ' ' || *p<'0' || *p>'9') return false; sum = sum * 10 + *p-48; //每一子段字符串转化为整数 p++; } if (*p == '.') { if ((*(p - 1) >= '0'&&*(p - 1) <= '9') && (*(p + 1) >= '0'&&*(p + 1) <= '9'))//判断"."前后是否有数字,若无,则为无效IP,如“1.1.127.” num++; //记录“.”出现的次数,不能大于3 else return false; }; if ((sum > 255) || (sum > 0 && cIP[0] =='0')||num>3) return false;//若子段的值>255或为0开头的非0子段或“.”的数目>3,则为无效IP if (*p != '\0') p++; n = 0; } if (num != 3) return false; return true;
}
2、首尾去除空格
void trim(const char* strin,char* strout)
{int i=0,m=0,len_ip=0,j=0,k=0;while(strin[k++]==' '){if(k==strlen(strin)){memset(strout,0,sizeof(strout));stpcpy(strout,"");return;}}len_ip=strlen(strin);j=len_ip-1;while(strin[i++]==' ');while(strin[j--]==' ');strncpy(strout,strin+(i-1),(j+1)-(i-1)+1);strout[j+1]='\0';
}
C语言 IP地址合法性判断 去除字符串首尾空格相关推荐
- C语言去掉字符串首尾空格,C语言实现去除字符串首尾空格
C语言实现去除字符串首尾空格 2019年09月28日 | 萬仟网IT编程 | 我要评论 /* C语言去除字符串首尾空格,trim()函数实现 https://blog.csdn.net/u013022 ...
- 去掉字符串首尾逗号_去除字符串首尾空格和特殊字符
去除字符串首尾空格和特殊字符 用户在输入数据时,经常会在无意中输入多余的空格,在有些情况下,字符串中不允许出现空格和特殊字符,此时就需要去除字符串中的空格和特殊字符.在PHP中提供了trim()函数去 ...
- 去除字符串首尾空格【shell】
去除字符串首尾空格: trim_string() {: "${1#"${1%%[![:space:]]*}"}": "${_%"${_##* ...
- C语言去除字符串首尾空格
char * strim(char *str)//去除首尾的空格 {char *end,*sp,*ep;int len;sp = str;end = str + strlen(str) - 1;ep ...
- js 字符串删除首尾_js去除字符串首尾空格
大家可能会说js删除字符串首尾空格有什么好说的, 哪个不会啊.确实,大家应该都会, 现在浏览器都支持, 不支持的可以使用ployfill,代码如下 if (!String.prototype.trim ...
- JavaScript去除字符串首尾空格
function trim(str) { return str.replace(//s+/g,""); } javascri ...
- js去除字符串首尾空格
说明 JavaScript 正则表达式 g.i.m分别代表的意思 g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即 停止: i:表示不区分大小写(case-i ...
- Lua 利用 match 和正则表达式去除字符串首尾空格
正则表达式中,字符含义这篇文章写的不错,https://www.cnblogs.com/meamin9/p/4502461.html. 其中 ^ 和 & 分别代表字符串首尾,%s 代表 ...
- ios 去除字符串首尾空格、换行
1. 去除首尾空格 NSString *title = [title stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharact ...
最新文章
- Linux cmake使用入门
- Windows内核对象管理
- Android华容道之一步一步实现-2-图片分割
- static_const和reinterpret_cast
- sql2008能否打开mysql数据库_SQL Server 2008通过LinkServer访问MySQL数据库
- macbook pro python开发_Mac打造python2 python3开发环境
- 自学python-自学Python要学多久可以学会?老男孩Python培训
- .net html第一张图片,基于Asp.net C#实现HTML转图片(网页快照)
- jQuery(3)——如何绑定事件
- C语言练习,求x的y次方的代码
- 使用R语言进行时间序列(arima,指数平滑)分析
- webpack不报错但是图标和字体却无法显示
- TypeScript-打包
- Bulletproof零知识证明
- 计算机拓展训练论文,素质拓展训练论文拓展训练论文
- Android Studio 3.4.1(3.5.2)入门教程( 2019.12.14修订)
- 什么是文件管理软件?你为什么需要它?
- 渗透一个最近很火的闲鱼钓鱼网站
- Win11如何清理C盘垃圾文件
- 3dmaxobj导出选项_3DMAX怎么导出obj?
热门文章
- Q1手机全球份额反超苹果,美国对华为的“双重恐惧”再度加深
- 理念高大上的智慧社区,要落地还得俯下身解决四个现实问题
- 服务器手工修改虚拟内存,服务器修改虚拟内存
- 如何获取一个dll的cwinapp对象_一个女孩子是如何和暧昧对象确定恋爱关系的
- vc6怎么看错误在哪_网红莉哥怎么红的为什么被封了 网红莉哥1400事件视频在哪看...
- linux notepad 安装教程,Ubuntu 15.04/14.10/14.04下安装和卸载Notepad++(notepadqq)
- python 3.9特性,Python 3.9 正式版要来了,会有哪些新特性?
- python教程:apscheduler模块使用教程
- Python编程4道练习题
- python3 ftp文件传输