2009-10-13 9 views
7

Estoy intentando compilar la guía de beej para ejemplos de programación de red, pero Windows XP no tiene esa función. Estoy usando mingw, si hace alguna diferencia.¿Existe una alternativa a inet_ntop/InetNtop en Windows XP?

+0

inet_ntop también falta en la implementación de Winsock en Windows Phone 8.1 . ¿De qué manera la EM podría aspirar al éxito de una plataforma tan paralizada? –

Respuesta

6

Si solo está tratando con direcciones IPv4, puede usar inet_ntoa. Está disponible en Windows 2000 o posterior. De lo contrario, tendrás que requerir Vista y más tarde, o escribir tu propia función inet_ntop.

También podría consultar boost: boost :: asio tiene una implementación inet_ntop que funciona en Windows: boost::asio::detail::socket_ops::inet_ntop. Puede ver el código fuente here.

+4

inet_ntoa está disponible en cada versión de Windows con WinSock2, no se puede confiar en MSDN cuando se trata de la versión mínima, parecen haberse olvidado de Win9x y NT4 – Anders

+0

Los encabezados MinGW no contienen una declaración de inet_ntop. Por lo tanto, incluso en Windows Vista y posterior no puede usarlo :( – Youda008

8

Desde la capa de Winsock: WSAAddressToString (ntop) y WSAStringToAddress (PtOn)

+1

Tenga en cuenta que 'WSAAddressToString' también agregará el número de puerto si la estructura de su dirección tiene uno. Para obtener la IP, es posible que deba crear una nueva dirección sin puerto – jowo

3

También hay inet_ntop función en POSIX compliant libc for Windows (PlibC) biblioteca que se creó para portar aplicaciones POSIX a Windows. No hay notas al respecto en online documentation, pero existe en el archivo inet_ntop.c al menos desde 2008 (según la fecha del archivo).

const char * inet_ntop(int af, const void *src, char *dst, size_t size) 
0

puede utilizar WinSocket con MinGW-64 en Windows 7

#include <winsock2.h> 
#include <windows.h> 
#include <ws2tcpip.h> 

linkwith

gcc showip.c -lws2_32 

Objetivo: x86_64-W64-mingw32 modelo Tema: Win32 gcc versión 6.3. 0 (GCC)

Cuestiones relacionadas