2010-09-22 4 views
8

J'ai une adresse IP stockée dans in_addr_t et je veux créer la représentation de chaîne correspondante de ce type de données (par exemple in_addr_t à 10.0.0.1).in_addr_t à string

Comment puis-je faire cela?

Répondre

7

Essayez inet_ntop

comme documenté ici: - manpagez

+0

Mon type est in_addr_t. Comment puis-je convertir entre les deux? – cateof

+1

@cateof: Vous pouvez simplement passer l'adresse de votre variable 'in_addr_t' comme argument' src', avec 'AF_INET' comme argument' af'. – caf

+0

Documentation plus récente [ici] (http://man7.org/linux/man-pages/man3/inet_ntop.3.html) – HappyCactus

-1

char *inet_ntoa(struct in_addr in);
est la fonction désirée. Inet_ntop prend const void * restreint src comme argument.

+2

inet_ntoa() semble être considéré obsolète. – unwind

+2

inet_ntoa prend un in_addr qui n'est pas le même que inet_addr_t. S'il vous plaît envisager de changer votre réponse. – WeGi

+0

'inet_ntoa' est une fonction non-réentrante, car elle renvoie un tampon statique. Il est donc préférable d'utiliser 'inet_ntop' au lieu de' inet_ntoa'. – rashok

Questions connexes