2010-04-01 2 views
0

je veux obtenir ipaddress de monordinateur dans une impression variables cette déclaration IPAddress de mon ordinateur mais je veux assigner dans un varible comment puis-je récupérer la valeur de ipaddress de inet_ntoa(inaddrr(ifr_addr.sa_data)) dans une ip variables de type char*.d'extraction valeur de ipaddress

printf("IP Address: %s\n", inet_ntoa(inaddrr(ifr_addr.sa_data))); 
+0

Comme nous l'avons souligné les trois dernières fois que vous avez demandé cela, c'est un doublon. Lisez la réponse à laquelle nous sommes liés lorsque nous l'avons fermée. –

+0

duplicata possible de http://stackoverflow.com/questions/485769/how-do-i-find-a-computers-ip-address –

+0

http://stackoverflow.com/questions/917332/getting-my-ip- adresse –

Répondre

2

inet_ntoa retourne déjà un char * - il est juste qu'il pointe vers un tampon statique, qui sera écrasée lors des appels ultérieurs. Si vous souhaitez enregistrer qui pointait à la chaîne, vous pouvez simplement utiliser strdup():

char *ip; 
/* ... */ 
ip = strdup(inet_ntoa(inaddrr(ifr_addr.sa_data))); 

Vous devez appeler free() sur ip lorsque vous avez terminé avec elle.

Questions connexes