Chris Wareham wrote: > Eric M. Monsler wrote: > >> >> Inspecting errno when? > > > > > tmp_float = (float)strtod("6.0e-44",NULL); > > /* inspect errno and tmp_float here - see strtod(3) */ > > if(errno == ERANGE) { > g_print("bad argument to strtod()\n"); > exit(1); > } else if(tmp_float == FLT_MIN || tmp_float == FLT_MAX) { > g_print("float out of range\n"); > exit(1); > } > > g_string_sprintf(pGStr,"%6.2f\n",tmp_float); > > Even better would be to skip the cast, make tmp_float > into tmp_double, and just check errno. This is because > FLT_MIN and FLT_MAX may not be portable beyond machines > with gcc on them. >
And of course you're already fucked if the return from strtod is greater than FLT_MAX or less than FLT_MIN. So the "else if" part of the code above is redundant. Chris -- [EMAIL PROTECTED] (work) [EMAIL PROTECTED] (home) _______________________________________________ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list