#i"/> #i">
이 앱에서는 C 언어를 사용하여 IP 주소를 확인하는 방법을 알아봅니다. IPv4 주소는 점으로 구분된 십진수 표기법으로 표현됩니다. 4개의 십진수(모두 0에서 255 사이)가 있습니다. 4개의 숫자는 3개의 점으로 구분됩니다.
유효한 IP 예: 192.168.4.1
IP 주소를 확인하려면 다음 단계를 따라야 합니다.
점 "."을 구분 기호로 사용하여 문자열(IP 주소)을 토큰화합니다.
하위 문자열에 숫자가 아닌 문자가 포함되어 있습니다
각 토큰의 숫자가 0~255 범위에 없으면 false를 반환합니다
3개의 점과 4개의 부분이 있으면 유효한 IP 주소입니다
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> int validate_number(char *str) { while (*str) { if(!isdigit(*str)){ //if the character is not a number, return false return 0; } str++; //point to next character } return 1; } int validate_ip(char *ip) { //check whether the IP is valid or not int i, num, dots = 0; char *ptr; if (ip == NULL) return 0; ptr = strtok(ip, "."); //cut the string using dor delimiter if (ptr == NULL) return 0; while (ptr) { if (!validate_number(ptr)) //check whether the sub string is holding only number or not return 0; num = atoi(ptr); //convert substring to number if (num >= 0 && num <= 255) { ptr = strtok(NULL, "."); //cut the next part of the string if (ptr != NULL) dots++; //increase the dot count } else return 0; } if (dots != 3) //if the number of dots are not 3, return false return 0; return 1; } int main() { char ip1[] = "192.168.4.1"; char ip2[] = "172.16.253.1"; char ip3[] = "192.800.100.1"; char ip4[] = "125.512.100.abc"; validate_ip(ip1)? printf("Valid</p><p>"): printf("Not valid</p><p>"); validate_ip(ip2)? printf("Valid</p><p>"): printf("Not valid</p><p>"); validate_ip(ip3)? printf("Valid</p><p>"): printf("Not valid</p><p>"); validate_ip(ip4)? printf("Valid</p><p>"): printf("Not valid</p><p>"); }
Valid Valid Not valid Not valid
위 내용은 IP 주소 코드를 확인하는 C 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!