Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Shon en 10 Octubre 2010, 14:00 PM

Título: ¿Qué hace exacta,emte ... "
Publicado por: Shon en 10 Octubre 2010, 14:00 PM
Hola,

he visto en varios sitios que hacen algo como esto:

int funcion(int arg1, char *arg2, ...) {
   /* lo que sea */
}


Qué hace esos tres puntos  :huh:

graciaaaaas

Título: Re: ¿Qué hace exacta,emte ... "
Publicado por: bizco en 10 Octubre 2010, 15:20 PM
eso es que la funcion tiene un numero variable de argumentos.
Título: Re: ¿Qué hace exacta,emte ... "
Publicado por: cbug en 10 Octubre 2010, 15:21 PM
Si es una función cualquiera, estas pasando un int y puntero a char y un número variable de argumentos...
Título: Re: ¿Qué hace exacta,emte ... "
Publicado por: globsharp en 10 Octubre 2010, 15:41 PM
Hola, yo tengo otra duda, relacionada con eso, yo ya sabía que los puntos suspensivos servían para eso, pero, mi pregunta es, ¿cómo accedes a esos argumentos variables una vez estás dentro de la rutina? ¿Alguien sabe?  :huh:

Y ya que estamos, ¿esto funciona en el C estándar o depende del compilador?

Gracias.
Título: Re: ¿Qué hace exacta,emte ... "
Publicado por: cbug en 10 Octubre 2010, 15:44 PM
Aqui tienes un ejemplo:

http://www.ozzu.com/es/tutoriales-de-cpp/tutorial-pase-numero-variable-argumentos-una-funcion-t96483.html
Título: Re: ¿Qué hace exacta,emte ... "
Publicado por: globsharp en 10 Octubre 2010, 15:48 PM
¡Espléndido ejemplo, espléndido!  ;D

¡Muchas gracias!