Il est de here, mais échoue lors de la compilation:Quels fichiers d'en-tête sont nécessaires pour exécuter cet extrait de code?
int main(int argc, char **argv)
{
struct hostent {
char *h_name; // main name
char **h_aliases; // alternative names (aliases)
int h_addrtype; // address type (usually AF_INET)
int h_length; // length of address (in octets)
char **h_addr_list; // alternate addresses (in Network Byte Order)
};
#define h_addr h_addr_list[0] // First address of h_addr_list.
struct hostent *info_stackoverflow;
int i = 0;
info_stackoverflow = gethostbyname("www.stackoverflow.com");
printf("The IP address of %s is %s",
info_stackoverflow->h_name,
inet_ntoa(* ((struct in_addr *)info_stackoverflow->h_addr)));
/* aliases */
while(*(pc_ip->h_aliases + i) != NULL)
{
printf("\n\tAlias: %s", *(pc_ip->h_aliases + i));
i++;
}
}
Pouvez-vous comprendre comment 'pc_ip' est défini? – httpinterpret
Oh, après avoir remplacé pc_ip avec info_stackoverflow, j'ai eu une erreur lors de la liaison: 'error LNK2019: symbole externe non résolu _inet_ntoa @ 4 référencé' – httpinterpret
Il compile OK maintenant, mais obtient une violation d'accès sur cette ligne' inet_ntoa (* ((struct in_addr *) info_stackoverflow-> h_addr))); ' – httpinterpret