C语言_IP地址解析

#include<stdio.h>
#include<stdlib.h>

void main()
{
    unsigned long input_IP;
    unsigned int BeginByte, MidByte, ThirdByte, EndByte;
    unsigned int_rotate = 0x07;

    printf("*****************************************************
");
    printf("**This program is to show how to parse a IP address**
");
    printf("*******************************************************");
    printf("Please enter the IP address(hex) you want parse:");
    scanf_s("%lx", &input_IP);
    BeginByte = (input_IP>>24)&~(~0<<8);
    MidByte = (input_IP>>16)&~(~0<<8);
    ThirdByte = (input_IP>>8)&~(~0<<8);
    EndByte = input_IP&~(~0<<8);
    printf("******************************************************
");
    printf("The IP address after parsed is: %d.%d.%d.%d
", BeginByte, MidByte, ThirdByte, EndByte);
    /*介绍两个循环移位函数*/
    printf("******************************************************
");
    printf("%u after rotated twice is =%u
", int_rotate, _rotl(int_rotate, 2));
    printf("%u after rotated once is =%u
", int_rotate, _rotr(int_rotate, 1));
    scanf_s("%d", int_rotate);
    system("@pause");

}
原文地址:https://www.cnblogs.com/landv/p/4958275.html