#i"/> #i">

Rumah >pembangunan bahagian belakang >C++ >Program C untuk mengesahkan kod alamat IP

Program C untuk mengesahkan kod alamat IP

WBOY
WBOYke hadapan
2023-09-04 21:13:101414semak imbas

Program C untuk mengesahkan kod alamat IP

Dalam aplikasi ini kita akan melihat cara mengesahkan alamat IP menggunakan bahasa C. Alamat IPv4 dinyatakan dalam tatatanda perpuluhan bertitik. Terdapat empat nombor perpuluhan (semuanya antara 0 dan 255). Empat nombor dipisahkan oleh tiga titik.

Contoh IP yang sah ialah: 192.168.4.1

Untuk mengesahkan alamat IP, kita harus mengikuti langkah-langkah ini:

  • Tokenkan rentetan (alamat IP) menggunakan titik " sebagai pembatas

  • palsu subrentetan mengandungi sebarang aksara bukan angka
  • Mengembalikan palsu jika nombor dalam setiap token tidak berada dalam julat 0 hingga 255
  • Jika terdapat tiga titik dan empat bahagian, maka ia adalah alamat IP yang sah

Contoh kod

#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>");
}

output
Valid
Valid
Not valid
Not valid
🎜

Atas ialah kandungan terperinci Program C untuk mengesahkan kod alamat IP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam