$ ./t_scan_float [0] 1e1 10.000000 fail: scan_float: [1] 1.000000 != 0.100000 $ gdb t_scan_float (gdb) r Starting program: ./t_scan_float [0] 1e1 10.000000 fail: scan_float: [1] 1.000000 != 0.100000 Program exited with code 01. (gdb) b scan_float Breakpoint 1 at 0x80486c6: file scan_float.c, line 15. (gdb) r Starting program: ./t_scan_float Breakpoint 1, scan_float (str=0x8048940 "1e1", f=0xbfbfeaa0) at scan_float.c:15 15 ptr = str; (gdb) c Continuing. [0] 1e1 10.000000 Breakpoint 1, scan_float (str=0x8048944 "1e-1", f=0xbfbfeaa0) at scan_float.c:15 15 ptr = str; (gdb) q The program is running. Exit anyway? (y or n) y