mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-01-31 11:37:35 +00:00
32 lines
1.3 KiB
C
32 lines
1.3 KiB
C
|
#include <stdio.h>
|
||
|
|
||
|
#define PARSE_AND_PRINT(type, scan_fmt, print_fmt, str) \
|
||
|
do { \
|
||
|
type val; int ret; \
|
||
|
ret = sscanf(str, scan_fmt, &val); \
|
||
|
printf("\"%s\" => " print_fmt " = %d\n", str, val, ret); \
|
||
|
} while (0)
|
||
|
|
||
|
int main()
|
||
|
{
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "0.3715");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", ".3715");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "3715");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "111.11");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "-2.22");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "Nan");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "nAn(2)");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "-NAN(_asdfZXCV1234_)");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "-nan");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "+nan");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "inF");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "iNfINiTy");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "+inf");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "-inf");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "0X1.BC70A3D70A3D7P+6");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "1.18973e+4932zzz");
|
||
|
PARSE_AND_PRINT(float, "%f", "%.10f", " -0.0000000123junk");
|
||
|
PARSE_AND_PRINT(float, "%f", "%f", "junk");
|
||
|
return 0;
|
||
|
}
|