c ++ строка для системы ipAddress для windows / unix - PullRequest
2 голосов
/ 21 марта 2011

Могу ли я преобразовать строку в IP-адрес в C + + на нескольких платформах Windows (различные версии) и Unix-системы?

Ответы [ 2 ]

3 голосов
/ 21 марта 2011

Вы можете использовать функцию inet_addr() для преобразования IP-адреса, представленного в виде строки, в форму, которую можно использовать с другими функциями сокетов.

Вот пример использования (взято из здесь ):

int rc;
int s;
struct sockaddr_in myname;

/* clear the structure to be sure that the sin_zero field is clear */
memset(&myname, 0, sizeof(myname));
myname.sin_family = AF_INET;
myname.sin_addr = inet_addr("129.5.24.1");
/* specific interface */
myname.sin_port = htons(1024);
0 голосов
/ 21 марта 2011

Если у вас есть имя хоста или полное доменное имя, и вам нужен запрос DNS или запрос внутреннего списка хостов, чтобы преобразовать его в IP-адрес, тогда вам нужно использовать gethostbyname.

...