Hola a todos, expongo mi duda:
Tengo que usar la función gethostbyname(), que devuelve un struct hostent*. El problema es que este puntero está declarado como static, por tanto esta función devuelve SIEMPRE la misma dirección de memoria. Por tanto en sucesivas llamadas se van "pisando" datos. Quiero conseguir que ésto no pase.
La solución que se me ocurre es hacer otra función que "construya" otro hostent* no static, copiarle los valores y devolverlo.
Mi pregunta es si C/C++ tiene algún mecanismo para copiar estructuras (hacer "a=b" no me vale porque así se copian las direcciones de memoria).
Gracias.
Tengo que usar la función gethostbyname(), que devuelve un struct hostent*. El problema es que este puntero está declarado como static, por tanto esta función devuelve SIEMPRE la misma dirección de memoria. Por tanto en sucesivas llamadas se van "pisando" datos. Quiero conseguir que ésto no pase.
La solución que se me ocurre es hacer otra función que "construya" otro hostent* no static, copiarle los valores y devolverlo.
Mi pregunta es si C/C++ tiene algún mecanismo para copiar estructuras (hacer "a=b" no me vale porque así se copian las direcciones de memoria).
Gracias.