¿Funciona en C con argumentos ilimitados?

Quiero definir una función en lenguaje C que pueda tomar un número ilimitado de argumentos de cualquier tipo de datos. Por ejemplo: printf() , scanf() , etc.

¿Alguna idea sobre esto?

Para usar el número variable de argumentos en C, debe incluir el encabezado

 #include  

printf() en C es un ejemplo de función que toma un número variable de argumentos.

 int printf(const char *fmt, ...) 

Más información aquí

Declara la función como tomando un ... último argumento. Tendrá que usar las macros de para acceder a los argumentos como una va_list .

Si solo desea algo como ” printf , pero con un poco de comportamiento adicional”, puede pasar la va_list a vprintf , vfprintf o vsprintf .

 #include  #include  #include  #ifdef __GNUC__ __attribute__((format(printf, 1, 2))) #endif void PrintErrorMsg(const char* fmt, ...) { time_t now; char buffer[20]; va_list args; va_start(args, fmt); time(&now); strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", gmtime(&now)); fprintf(stderr, "[%s] ", buffer); vfprintf(stderr, fmt, args); fputc('\n', stderr); va_end(args); } 
 void printf(char* format, ...) { } 

Busque las funciones Variadic y varargs.h o stdarg.h (dependiendo del comstackdor).

Consulte el y la documentación relacionada.