Windows prend en charge inet_pton
, qui a une interface similaire à inet_aton
(mais cela fonctionne aussi avec les adresses IPV6). Indiquez simplement AF_INET
comme premier paramètre, et il fonctionnera autrement comme inet_aton
.
(Si vous pouvez changer la source Linux, inet_pton
y travaillera également).
Pour exécuter Windows XP, vous pouvez essayer cette vérification :
#pragma comment(lib, "Ws2_32.lib")
sockaddr_in inaddr;
#ifdef _WIN32_WINNT 0x0501
inaddr.sin_addr.s_addr =inet_addr("10.10.10.10"); //for XP
#else
inet_pton(AF_INET, "10.10.10.10", &inaddr.sin_addr.s_addr); //for Vista or higher
#endif
C'est l'équivalent Windows plutôt que l'équivalent C++, mais vous voulez probablement inet_addr
, qui, je crois, est antérieur à inet_aton
et que Windows prend en charge.
http://msdn.microsoft.com/en-us/library/ms738563.aspx
Cet article répertorie également, dans la section "voir aussi", l'ensemble complet des fonctions nommées de manière détaillée pour gérer les adresses IPv6, etc.