07_
来源:互联网 发布:java中的foreach循环 编辑:程序博客网 时间:2024/06/05 16:25
/*从字符串中获取尽可能多的ipv4地址*/void getIP( char *ip ) { if ( (nullptr==ip)||(strlen(ip)<4)||(strlen(ip)>12) ) { return; } char *s = ip; long long sum = 0; int i = 0; char *dest = new char[strlen(ip) + 4]; char *temp = dest; vector<char*> v; for (int i1 = 1; i1 <= 3; ++i1) { i = 0; sum = 0; temp = dest + 0; s = ip+0; while ( (i<i1)&&(*s !='\0') ) { sum = sum * 10 + (*s - '0'); ++i; *temp++ = *s++; } if (sum > 255) { break; } else { *temp++ = '.'; for (int i2 = 1; i2 <= 3; ++i2) { i = 0; sum = 0; temp = dest + i1+1; s = ip + i1; while ((i<i2) && (*s != '\0')) { sum = sum * 10 + (*s - '0'); ++i; *temp++ = *s++; } if (sum > 255) { break; } else { *temp++ = '.'; for (int i3 = 1; i3 <= 3; ++i3) { i = 0; sum = 0; temp = dest + i2+i1+2; s = ip + i2+i1; while ((i<i3) && (*s != '\0')) { sum = sum * 10 + (*s - '0'); ++i; *temp++ = *s++; } if (sum > 255) { break; } else { *temp++ = '.'; sum = 0; while ( *s != '\0' ) { sum = sum * 10 + ( *s-'0'); *temp++ = *s++; } *temp = '\0'; if ( sum>255 ) { continue; } else { char *chen = new char[strlen(ip) + 4]; strcpy( chen , dest ); v.push_back(chen); } } } } } } } for (auto b = v.begin(); b != v.end();++b ) { cout << *b << endl; }}
阅读全文
0 0
- 07_
- 07_使用插件
- 07_集合
- 07_软件工程
- 07_数据绑定
- 07_流程控制
- 07_合影效果
- 07_异常
- ^_^
- ^_^
- ^_^
- ^_^
- *_&
- ...!@~....!@#....+_#%.
- ^_^
- ^_^
- ^_^
- ^_^
- 将“hello world” 输出为“world hello”
- POJ
- C语言实现矩阵的转置
- Titanic: Machine Learning from Disaster
- mysql 存储过程(临时表、循环、游标综合运用)
- 07_
- WindowsError的错误代码详解
- UVALive 7272 Promotions【拓扑排序】【bitset】
- Eclipse 修改背景图片(不是修改背景颜色)
- cartogarpher slam 3
- python实现最小二乘法(转)
- Codeforces-868C
- R programming羊羊学习笔记
- Hadoop生态系统介绍