[C con Clase] Funciones con numero variable de argumento

ori_ganduxe Ganduxé Pregona oriol_ganduxe en hotmail.com
Lun Jul 9 13:28:47 CEST 2007


Hola a todos, soy nuevo aqui y estoy aprendiendo desde cero con el C++, 
disculpen si mis preguntas son muy obias.
En el curso que hay colgado en la pagina de c con clase hay un ejemplo que 
es:

#include <iostream>
#include <cstdarg>
using namespace std;

void funcion(int a, ...);

int main() {
   funcion(1, "cadena 1", 0);
   funcion(1, "cadena 1", "cadena 2", "cadena 3", 0);
   funcion(1, 0);

   cin.get();
   return 0;
}

void funcion(int a, ...) {
   va_list p;
   va_start(p, a);
   char *arg;

   while ((arg = va_arg(p, char*))) {
      cout << arg << " ";
   }
   va_end(p);
   cout << endl;
}

Lo que yo no entiendo es porque el argumento siguiente de la funcion va_arg 
es de tipo puntero a char ya que se trata de un array.

Muchas gracias y disculpen las molestias.

_________________________________________________________________
¿Estás pensando en cambiar de coche? Todas los modelos de serie y extras en 
MSN Motor. http://motor.msn.es/researchcentre/





Más información sobre la lista de distribución Cconclase