int i;
char hname[100];
struct in_addr addr;
struct hostent *ip;
WSADATA wsaData;

WSAStartup(MAKEWORD(1, 1), &wsaData);

gethostname(hname, sizeof(hname));
printf ("Nome host: %s\n\n", hname);

ip = gethostbyname(hname);

printf ("Indirizzi IP:\n");

for (i = 0; ip->h_addr_list[i] != 0; i++)
{
memcpy(&addr, ip->h_addr_list[i], sizeof(struct in_addr));
printf("%d) %s\n", i+1, inet_ntoa(addr));
}

WSACleanup();