Trong chương trình đó, tôi muốn tăng địa chỉ IP. Và tôi nhìn thấy đầu ra như thế:Tăng địa chỉ IP
125.23.45.67
126.23.45.67
127.23.45.67
128.23.45.67
129.23.45.67
130.23.45.67
131.23.45.67
132.23.45.67
133.23.45.67
134.23.45.67
Nhưng tôi muốn nhìn thấy đầu ra như thế này:
124.23.45.67
124.23.45.68
124.23.45.68
124.23.45.70
124.23.45.71
124.23.45.72
124.23.45.73
124.23.45.74
124.23.45.75
124.23.45.76
Đây là mã chương trình:
#include <stdlib.h>
#include <stdio.h>
#include <iostream>
using namespace std;
#include "winsock2.h"
#pragma comment(lib,"wsock32.lib")
void main()
{
in_addr adr1;
in_addr adr2;
int i;
adr1.s_addr=inet_addr("124.23.45.67");
adr2.s_addr=inet_addr("as.34.34.56");
if (adr1.s_addr!=INADDR_NONE)
cout << " adr1 correct" << endl;
else
cout << " adr1 incorect " << endl;
if (adr2.s_addr!=INADDR_NONE)
cout << " adr2 correct" << endl;
else
cout << " adr2 incorect" << endl;
cout << inet_ntoa(adr1) << endl;
cout << inet_ntoa(adr2) << endl;
for (i=0;i<10;i++)
{
adr1.s_addr ++;
cout << inet_ntoa(adr1) << endl;
}
}
thx rất nhiều. Tôi đã jast tìm chức năng này "htonl". –
+1, nhưng lật thứ tự byte dường như bị hack. [Những người khác] (http://stackoverflow.com/questions/1505676/how-do-i-increment-an-ip-address-represented-as-a-string/1505709#1505709) đồng ý với bạn. – darvids0n
Làm "toán" trên một địa chỉ IP có vẻ kỳ quặc. Điều gì sẽ xảy ra khi toán học tạo ra một địa chỉ IP ngoài mạng con? Tất cả các trường hợp góc phải được xử lý. – selbie