Получение IP-адреса локальной машины

Для получения IP-адреса локальной машины можно воспользоваться следующим кодом:

#include <winsock.h>

#include <stdio.h>

WORD
wVersionRequested;

WSADATA
wsaData;

wVersionRequested
= MAKEWORD(1, 0);



int
err =
WSAStartup(wVersionRequested, &wsaData);


if(err
== 0)

  {


  char
hn[1024];


  struct
hostent *adr;

   
if(gethostname((char
*)&hn, 1024))

    {


int
err = WSAGetLastError();

       
Beep();

     
};


   
adr = gethostbyname(hn);

   
if(adr)

     
{

       
char
*LocalIp =
new
char[15];

       
sprintf(LocalIp,"%d.%d.%d.%d",

       
(
unsigned
char)adr->h_addr_list[0][0],

       
(
unsigned
char)adr->h_addr_list[0][1],

       
(
unsigned
char)adr->h_addr_list[0][2],

 
    (
unsigned
char)adr->h_addr_list[0][3]);

   

}

}

После выполнения этого кода в LocalIp у вас будет находиться искомый IP-адрес.