IPアドレスの合法性を判断し、IPアドレスを文字列とともに保存します
Determine Legality An Ip Address
Python3バージョン
#!/usr/bin/python import os,sys def check_ip(ipaddr): import sys Addr=ipaddr.strip().split('.') #cut IP address to a list #print addr If len(addr) != 4: #The list must have 4 parameters after cutting print('check ip address failed!') sys.exit() for i in range(4): try: Addr[i]=int(addr[i]) #Each parameter must be a number, otherwise the check fails except: print('check ip address failed!') sys.exit() If addr[i]=0: #each parameter value must be between 0-255 pass else: print('check ip address failed!') sys.exit() i+=1 else: print('check ip address success!') If len(sys.argv)!=2: #pass participation itself must be 2 in length print('Example: %s 10.0.0.1 '%sys.argv[0]) sys.exit() else: check_ip(sys.argv[1])
C ++:
#include #include int chk_if_ipaddr(unsigned char *ipstr){ unsigned char dotnum = 0 short maxval=0 while(*ipstr != ' '){ if(*ipstr>='0' && *ipstr3) { printf('dot num is large than 3
') return -1 } if(maxval255){ //printf('illegal ip!
') return -1 } maxval = 0 } else { printf('ipstring is not illegal
') } ipstr++ } if(maxval>=0 && maxval<=255 && dotnum==3) { return 1 } return 0 } int main() { unsigned char ipstradd[50]='1920.168.1.1' printf('%s',ipstradd) if(chk_if_ipaddr(ipstradd)!=1){ printf('not is a ipaddr
') } else { printf('is a ipaddr
') } return 0 }