¿cómo puedo convertir una cadena ipAddress (struct in_addr) y viceversa? y cómo puedo convertir en ipAddress larga sin firmar? graciasCómo convertir cadena a dirección IP y viceversa
Respuesta
Utilice inet_ntop()
y inet_pton()
si lo necesita de otra manera. No use inet_ntoa(), inet_aton()
y similares ya que están en desuso y no son compatibles con ipv6.
Aquí hay un buen guide con algunos ejemplos.
// IPv4 demo of inet_ntop() and inet_pton()
struct sockaddr_in sa;
char str[INET_ADDRSTRLEN];
// store this IP address in sa:
inet_pton(AF_INET, "192.0.2.33", &(sa.sin_addr));
// now get it back and print it
inet_ntop(AF_INET, &(sa.sin_addr), str, INET_ADDRSTRLEN);
printf("%s\n", str); // prints "192.0.2.33"
inet_ntoa()
convierte una cadena a in_addr
:
La función inet_ntoa convierte una dirección (IPv4) a la red de Internet en una cadena ASCII en el estándar de Internet formato decimal con puntos.
inet_addr()
hace el trabajo inverso
La función inet_addr convierte una cadena que contiene una dirección decimal con puntos IPv4 en una dirección adecuada para la estructura in_addr
PS esto el primer resultado googlear "in_addr to string"!
No estoy seguro de haber entendido la pregunta correctamente.
De todos modos, ¿Está buscando para ello:
std::string ip ="192.168.1.54";
std::stringstream s(ip);
int a,b,c,d; //to store the 4 ints
char ch; //to temporarily store the '.'
s >> a >> ch >> b >> ch >> c >> ch >> d;
std::cout << a << " " << b << " " << c << " "<< d;
192 168 1 54
Convertir cadena a in-addr:
in_addr maskAddr;
inet_aton(netMaskStr, &maskAddr);
Convertir in_addr de cadena:
char saddr[INET_ADDRSTRLEN];
inet_ntop(AF_INET, &inaddr, saddr, INET_ADDRSTRLEN);
que fue capaz de convertir la serie en DWORD y la espalda con este código:
char strAddr[] = "127.0.0.1"
DWORD ip = inet_addr(strAddr); // ip contains 16777343 [0x0100007f in hex]
struct in_addr paddr;
paddr.S_un.S_addr = ip;
char *strAdd2 = inet_ntoa(paddr); // strAdd2 contains the same string as strAdd
estoy trabajando en un proyecto de mantenimiento de código MFC de edad, por lo que la conversión de funciones obsoletas llama no es aplicable.
Este ejemplo muestra cómo convertir de cadena a IP y viceversa:
struct sockaddr_in sa;
char ip_saver[INET_ADDRSTRLEN];
// store this IP address in sa:
inet_pton(AF_INET, "192.0.1.10", &(sa.sin_addr));
// now get it back
sprintf(ip_saver, "%s", sa.sin_addr));
// prints "192.0.2.10"
printf("%s\n", ip_saver);
- 1. convertir fuente a cadena y viceversa
- 2. Convertir cadena de dirección IP a binario en Python
- 3. Convertir cadena hexadecimal "little endian" a dirección IP en Python
- 4. Cómo convertir una cadena de formato de dirección IP estándar a hexadecimal y larga?
- 5. ¿Convertir NSDate a una cadena de formato largo y viceversa?
- 6. [NSNetservice] a IP cadena de dirección
- 7. ¿Cómo convertir POJO a JSON y viceversa?
- 8. Convertir cadena JRuby a matriz de bytes Java, y viceversa
- 9. Cadena a byte [] y viceversa?
- 10. C# Dirección IP de cadena
- 11. Java convertir int a hexadecimal y viceversa
- 12. Convertir 0 a 1 y viceversa
- 13. entidades convertir HTML a Unicode y viceversa
- 14. ¿Cómo uso BitShifting para convertir una dirección IP basada en int a una cadena?
- 15. Imagen a matriz de bytes a cadena (y viceversa)
- 16. Convertir una imagen a base64 y viceversa
- 17. Cómo el compilador convierte entero a cadena y viceversa
- 18. .Net Dirección IP IPv4
- 19. jQuery: Convertir contenido de TextArea en cadena html y viceversa
- 20. cómo convertir formatos de fecha php a GMT y viceversa?
- 21. ¿Cómo puedo convertir Xml a Json y viceversa en C#
- 22. ¿Cómo convertir de archivo binario a objeto reubicable y viceversa?
- 23. Cómo convertir byte [] a base64 (y viceversa) en J2ME?
- 24. Forma fácil de convertir un diccionario <cadena, cadena> a xml y viceversa
- 25. Entero a la dirección IP - C
- 26. Convertir codificación ascii a int y viceversa en python (rápidamente)
- 27. Convirtiendo un int a una dirección IP
- 28. cómo convertir una matriz de bytes a una cadena y viceversa
- 29. Python: ¿Cómo convierto de binario a base 64 y viceversa?
- 30. ¿Cómo puedo convertir una cadena en una cadena codificada en UTF-8 y viceversa?
¿Qué debo hacer para usarlos en Windows? ¿Qué debo incluir? – Safari
Si usa winsock, entonces InetNtop e InetPton en Windows Vista y posterior. Archivo de encabezado Ws2tcpip.h. Un consejo es mirar ejemplos en msdn. – Milan
uso windows xp. – Safari