整數與IP地址之間的轉換

題目
類型:位運算
難度:簡單
注意:IP可能超過int需要用無符號整型,並且牛客的判題系統while中的scanf必須要不等於EOF不然會出錯。

#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
 
int main(){
    unsigned int a, b, c , d, e;
    while(scanf("%u.%u.%u.%u %u", &a, &b, &c, &d, &e)!=EOF){
        printf("%u\n", ((a<<24)|(b<<16)+(c<<8)|d));
        a = (e>>24)&255;
        b = (e>>16)&255;
        c = (e>>8)&255;
        d = (e&255);
        printf("%u.%u.%u.%u\n", a,b,c,d);
    }
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章