/*
int isfinite ( float x );
int isfinite ( double x );
int isfinite ( long double x );
*/
#include
#include
#include
int main(char *argv[])
{
va_list argptr;
double somme = 0.0;
double val = 0.0;
int n=sizeof(argv)/sizeof(argv[0]);
va_start( argptr, n );
while ( n-- )
{
val = va_arg( argptr, double );
somme += val;
/* Arrêter l'opération si la somme atteind l'infinité */
if ( isfinite( somme ) == 0 )
break;
}
va_end( argptr );
printf ("%l",somme);
return 0;
}