1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| void scanf2(char *control, ...)
{
va_list ap;
int d;
char c, *p, *s;
char *g;
gets2(&g); //recupere une chaine de caractere de l'user
va_start (ap, control);
while (*control)
{
if (control=='%')
{
*control ++;
switch (*control ++)
{
case 's': /* cadena */
// renvoi la chaine user dans l'arg ...?
s = va_arg (ap, char *);
printf ("chaine %s\n", s);
break;
case 'd': /* entier */
// renvoi la chaine user convertie en int dans l'arg ...?
d = va_arg (ap, int);
//d=atoi(&g);
printf ("int %d\n", d);
break;
case 'c': /* caractère */
// renvoi la caractere user dans l'arg ...?
c = va_arg (ap, char);
printf ("char %c\n", c);
break;
}
}
}
//va_arg
/*
if (strcmp(s,"%i")==0)
v=atoi(&c);
//printf("%i",atoi(&c));*/
va_end(ap);
} |
Partager