#include <stdio.h>
#include <stdarg.h>
// int function_name(data_type variable_name, ...);
void PrintMix(const char* fmt, ...) {
va_list args;
va_start(args, fmt);
while (*fmt != '\0') {
if (*fmt == 'd') {
int i = va_arg(args, int);
printf("%d\n", i);
}
else if (*fmt == 'c') {
char ch = va_arg(args, int);
printf("%c\n", ch);
}
else if (*fmt == 'f') {
double d = va_arg(args, double);
printf("%lf\n", d);
}
else if (*fmt == 's') {
char* s = va_arg(args, char*);
puts(s);
}
fmt++;
}
va_end(args);
}
int main() {
PrintMix("fdcfs", 3.14, 2347, 'z', 45.837, "c programming");
return 0;
}
/*
run:
3.140000
2347
z
45.837000
c programming
*/