- 11
- 0
- 约4.98千字
- 约 7页
- 2018-03-31 发布于河南
- 举报
IP地址的合法性和子网判断终极版(带ABCDE类网分类、带指导学渣如何使用代码)
IP地址的合法性和子网判断终极版(带ABCDE类网分类、带指导学渣如何使用代码)#include iostream.h #include string.h #include stdlib.h #include stdio.h #include math.h #include ctype.h //类结构int flag;classipTest{ char ip[15]; //定义ip数组,存放ip地址char subnetPlusMask[18]; //定义subnetPlusMask数组,存放子网号和子网掩码中1的个数char subnet[18]; //定义subnet数组,存放子网号char TempIp[15]; //定义TempIp数组,存放临时的ip地址char TempSub[18]; //定义TempSub数组,存放临时的子网号int mask; //定义整型mask,存放子网掩码中1的个数boolmaskIsValid;//定义布尔值maskIsValid,存放判断mask真值的变量public: ipTest(char *,char *); //定义ipTest函数~ipTest(){}; boolNoIllegalChar(char *); //非法字符的判断boolipIsValid(char *); //判断IP地址是否合法boolsubnetIsValid(char *); //判断子网号是否合法void belong(); //判断IP是否为子网成员charTellIpType(int num) ;print();//定义输出函数print }; //主函数void main(intargc,char *argv[]){ flag=1;if(argc != 3){ //判断参数格式是否正确cout 命令格式错误! endl 正确的命令格式应该是:程序名子网号/掩码ip地址 endl; return; } else{if(strlen(argv[1]) 18){ //先判断最简单的错误,子网号及子网掩码长度和是否超出cout 子网号以及子网掩码长度过长!; return; } if(strlen(argv[2]) 15){ //ip地址长度是否超出cout ip地址长度过长!; return; } ipTest test(argv[1],argv[2]); //实例化ipTest类test.print(); //完成相应判别并输出结果} } //构造函数ipTest::ipTest(char* subnetPlusMask,char *ip){ maskIsValid = true; char temp[2]; //把/前的字符复制到subnet字符数组中intsmLen = strlen(subnetPlusMask); // 定义smLen为subnetPlusMask的长度for(inti = 0;i smLen subnetPlusMask[i] != /;i++){ this-subnet[i] = subnetPlusMask[i]; //对subnet数组赋值,值为subnetPlusMask中的数值this-TempSub[i] = subnetPlusMask[i]; //对TempSub数组赋值,值为subnetPlusMask中的数值} subnet[i] = \0;//给数组加上结束符TempSub[i] = \0; //给数组加上结束符if(i = smLen-3){ //初始化mask和maskIsValidif(i == smLen-2){ temp[0] = subnetPlusMask[i+1]; if(!isdigit(temp[0])) //判断temp中的值是否为字符maskIsValid = false; } else if(i == smLen-3){ temp[0] = subnetPlusMask[i+1]; temp[1] = subnetPlusMask[1+2]; if(!(isdigit(temp[0])isdigit(temp[1]))) //判断temp中的值是否为字符maskIsValid = false; } mask = atoi(temp); //将temp中的字符数值化if(mask 0 || mask 32) //判断mask值是否超出范围maskIsValid = false; } else //用十进制数表示的掩码中1的个数只能是一位数或者两位数maskIsValid = false; strcpy(this-subnetPlusMask,subnetPlusMask);
您可能关注的文档
最近下载
- 数字图像处理图像编码.ppt VIP
- 湖北城市建设职业职业技术学院2025年高职单招考试城市燃气工程技术专业考试大纲.pdf VIP
- 长帝电烤箱TV42W使用说明书用户手册.pdf
- 气象学与气候学课件.pptx
- 电子科技大学《光电图像处理》 第六章 图像编码与压缩 ppt课件.pptx VIP
- 对外经济贸易大学2021-2022学年《Python程序设计》期末考试试卷(A卷)及标准答案.docx
- 高考数学极值点偏移练习题(含答案).docx VIP
- 化工过程安全管理导则-装置安全规划与设计课件.pptx VIP
- 五脏与情志 jt叔叔 JT叔叔伤寒杂病论慢慢教(.)五脏与情志.doc VIP
- 图像处理与分析图像的编码技术.ppt VIP
原创力文档

文档评论(0)