test3.c - 9base - revived minimalist port of Plan 9 userland to Unix | |
git clone git://git.suckless.org/9base | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
test3.c (861B) | |
--- | |
1 #include <u.h> | |
2 #include <libc.h> | |
3 #include <stdio.h> | |
4 | |
5 void | |
6 test(char *fmt, ...) | |
7 { | |
8 va_list arg; | |
9 char fmtbuf[100], stdbuf[100]; | |
10 | |
11 va_start(arg, fmt); | |
12 vsnprint(fmtbuf, sizeof fmtbuf, fmt, arg); | |
13 va_end(arg); | |
14 | |
15 va_start(arg, fmt); | |
16 vsnprint(stdbuf, sizeof stdbuf, fmt, arg); | |
17 va_end(arg); | |
18 | |
19 if(strcmp(fmtbuf, stdbuf) != 0) | |
20 print("fmt %s: fmt=\"%s\" std=\"%s\"\n", fmt, fmtbuf, st… | |
21 | |
22 print("fmt %s: %s\n", fmt, fmtbuf); | |
23 } | |
24 | |
25 | |
26 int | |
27 main(int argc, char *argv[]) | |
28 { | |
29 test("%f", 3.14159); | |
30 test("%f", 3.14159e10); | |
31 test("%f", 3.14159e-10); | |
32 | |
33 test("%e", 3.14159); | |
34 test("%e", 3.14159e10); | |
35 test("%e", 3.14159e-10); | |
36 | |
37 test("%g", 3.14159); | |
38 test("%g", 3.14159e10); | |
39 test("%g", 3.14159e-10); | |
40 | |
41 test("%g", 2e25); | |
42 test("%.18g", 2e25); | |
43 | |
44 test("%2.18g", 1.0); | |
45 test("%2.18f", 1.0); | |
46 test("%f", 3.1415927/4); | |
47 | |
48 test("%20.10d", 12345); | |
49 test("%0.10d", 12345); | |
50 | |
51 return 0; | |
52 } |