C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++でIPアドレスを16進数に変換するプログラム


入力をIPアドレス値として指定すると、タスクは指定されたIPアドレスを16進数に相当するものとして表すことです。

IPアドレスとは

IPアドレスまたはインターネットプロトコルは、ネットワークに接続されているハードウェアを一意に表す一意の番号です。インターネットとは、ネットワークとプロトコルを介して、接続のために従わなければならない一連の規則と規制を定義することを意味します。 IPアドレスのみのため、システムはネットワークを介して別のシステムと通信することができます。 IPには2つのバージョンがあります-

  • IPv4(インターネットプロトコルバージョン4)
  • IPv6(インターネットプロトコルバージョン6)

IPアドレスは、-

の形式の一連の数字として表されます。

151.101.65.121

この変換では、以下のプログラムはインターネット操作用に作成されたヘッダーファイル「arpa/inet.h」を使用しています

Input-: 127.0.0.1
Ouput-: 0x7f000001
Input-: 172.31.0.2
Output-: 0xac1f0002

アルゴリズム

Start
Step1-> Declare function to reverse
   void reverse(char* str)
      set int len = 2
      set int r = strlen(str) – 2
      Loop While (len < r)
         call swap(str[len++], str[r++])
         Call swap(str[len++], str[r])
         Set r = r – 3
      End
   End
Step 2-> Declare function to convert IP address to hexadecimal
   void convert(int ip_add)
      declare char str[15]
      call sprintf(str, "0x%08x", ip_add)
      call reverse(str)
      print str
step 3-> In main()
   declare int ip_add = inet_addr("127.0.0.1")
   call convert(ip_add)
Stop

#include <arpa/inet.h>
#include <iostream>
#include <string.h>
using namespace std;
//reverse hexadecimal number
void reverse(char* str) {
   int len = 2;
   int r = strlen(str) - 2;
   while (len < r) {
      swap(str[len++], str[r++]);
      swap(str[len++], str[r]);
      r = r - 3;
   }
}
//Convert IP address to heaxdecimal
void convert(int ip_add) {
   char str[15];
   sprintf(str, "0x%08x", ip_add);
   reverse(str);
   cout << str << "\n";
}
int main() {
   int ip_add = inet_addr("127.0.0.1");
   convert(ip_add);
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます

0x7f000001

  1. C++での10進数から16進数への変換プログラム

    10進数を入力として指定すると、タスクは指定された10進数を16進数に変換することです。 コンピューターの16進数は16を底とし、10進数は10を底とし、0〜9の値で表されますが、16進数は0〜15から始まる数字で、10はA、11はB、12はC、 Dとして13、Eとして14、Fとして15。 10進数を16進数に変換するには、指定された手順に従います- まず、指定された数値を変換数値の基本値で除算します。例: 6789を16を底とする16進数に変換し、商を取得して格納する必要があるため、6789を16で除算します。余りが0〜9の場合はそのまま保存し、余りが10〜15の場合は、文字形式でA-

  2. 華氏を摂氏に変換するC++プログラム

    このプログラムでは、C++を使用して摂氏を華氏に変換する方法を説明します。私たちが知っているように、式は単純です。 アルゴリズム Begin Take the Celsius temperature in C calculate F = (9C/5)+32 return F End サンプルコード #include<iostream> using namespace std; main() { float f, c; cout << "Enter temperature in Celsius: "; cin >>