IPアドレスを引数として取るプログラムを作成し、このIPアドレスをunit32_tに格納したいと思いました。uint32_tを文字配列に簡単に戻すことができます。Char配列のIPアドレスをuint32_tに変換する方法。
例えば
./IPtoCHAR 1079733050
uint32_tからIPアドレス=>64.91.107.58
しかし、逆のタスクを実行するプログラムを作成するにはどうすればよいですか?
./CHARtoIP 64.91.107.58
最初のIPtoCHARの場合、
unsigned int ipAddress = atoi(argv [1]);
printf( "IPアドレス%d。%d。%d。%d \ n"、((ipAddress >> 24)&0xFF)、((ipAddress >> 16)&0xFF)、((ipAddress >> 8)& 0xFF)、(ipAddress&0xFF));
しかし、以下のすべてが機能するわけではありません
uint32_t aa =(uint32_t)( "64.91.107.58");
uint32_t aa = atoi( "64.91.107.58");
uint32_t aa = strtol( "64.91.107.58"、NULL、10);