如何将点分十进制的ip地址转换为整形C++
时间: 2024-01-22 15:18:28 浏览: 101
c++编写的ip地址转换
可以使用以下代码将点分十进制的IP地址转换为整数:
```cpp
#include <iostream>
#include <string>
#include <sstream>
#include <bitset>
using namespace std;
unsigned int ipToNum(string ip) {
stringstream ss(ip);
string segment;
unsigned int num = 0;
while (getline(ss, segment, '.')) {
num = (num << 8) + stoi(segment);
}
return num;
}
int main() {
string ip = "192.168.1.1";
unsigned int num = ipToNum(ip);
cout << num << endl; // 输出 3232235777
return 0;
}
```
首先,我们将字符串形式的IP地址分成四个段,然后将每个段转换为十进制数,并将它们左移8位,最后将它们相加得到一个32位整数。
阅读全文