题解 | 整数与IP地址间的转换
整数与IP地址间的转换
https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea
#include <bitset> #include <iostream> #include <cstdio> #include <vector> using namespace std; int main() { uint32_t a, b, c, d; scanf("%d.%d.%d.%d", &a, &b, &c, &d); uint32_t res1 = (a << 24) + (b << 16) + (c << 8) + d; uint32_t mark = 255; uint32_t num; cin >> num; vector<int> ip(4); int i = 4; while(i--){ ip[i] = num & mark; num = num >> 8; } printf("%u\n", res1); printf("%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3]); return 0; } // 64 位输出请用 printf("%lld")