/* gcc -O0 -o floatexception --std=gnu99 floatexception.c -lm */ #include #include #include int main( int argc, char **argv) { int one= 1, zero= 0, result; double d_one= 1.0, d_zero= 0.0, d_result; // result= one / zero; d_result= d_one / d_zero; fprintf(stderr, "1.0 / 0.0 = %g\n", d_result); d_result= log(d_zero); fprintf(stderr, "log(0.0) = %g\n", d_result); d_result= d_zero / d_zero; fprintf(stderr, "0.0 / 0.0 = %g\n", d_result); fprintf(stderr, "comparing nan > 0: %d\n", (int)(NAN > 0.0)); fprintf(stderr, "normal program termination\n"); return 0; }