wmii

git clone git://oldgit.suckless.org/wmii/
Log | Files | Refs | README | LICENSE

test.c (2481B)


      1 /*
      2  * The authors of this software are Rob Pike and Ken Thompson.
      3  *              Copyright (c) 2002 by Lucent Technologies.
      4  * Permission to use, copy, modify, and distribute this software for any
      5  * purpose without fee is hereby granted, provided that this entire notice
      6  * is included in all copies of any software which is or includes a copy
      7  * or modification of this software and in all copies of the supporting
      8  * documentation for such software.
      9  * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
     10  * WARRANTY.  IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE
     11  * ANY REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY
     12  * OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
     13  */
     14 #include <stdio.h>
     15 #include <stdarg.h>
     16 #include <utf.h>
     17 #include "plan9.h"
     18 #include "fmt.h"
     19 #include "fmtdef.h"
     20 
     21 int
     22 main(int argc, char *argv[])
     23 {
     24 	quotefmtinstall();
     25 	print("hello world\n");
     26 	print("x: %x\n", 0x87654321);
     27 	print("u: %u\n", 0x87654321);
     28 	print("d: %d\n", 0x87654321);
     29 	print("s: %s\n", "hi there");
     30 	print("q: %q\n", "hi i'm here");
     31 	print("c: %c\n", '!');
     32 	print("g: %g %g %g\n", 3.14159, 3.14159e10, 3.14159e-10);
     33 	print("e: %e %e %e\n", 3.14159, 3.14159e10, 3.14159e-10);
     34 	print("f: %f %f %f\n", 3.14159, 3.14159e10, 3.14159e-10);
     35 	print("smiley: %C\n", (Rune)0x263a);
     36 	print("%g %.18g\n", 2e25, 2e25);
     37 	print("%2.18g\n", 1.0);
     38 	print("%2.18f\n", 1.0);
     39 	print("%f\n", 3.1415927/4);
     40 	print("%d\n", 23);
     41 	print("%i\n", 23);
     42 	print("%0.10d\n", 12345);
     43 
     44 	/* test %4$d formats */
     45 	print("%3$d %4$06d %2$d %1$d\n", 444, 333, 111, 222);
     46 	print("%3$d %4$06d %2$d %1$d\n", 444, 333, 111, 222);
     47 	print("%3$d %4$*5$06d %2$d %1$d\n", 444, 333, 111, 222, 20);
     48 	print("%3$hd %4$*5$06d %2$d %1$d\n", 444, 333, (short)111, 222, 20);
     49 	print("%3$lld %4$*5$06d %2$d %1$d\n", 444, 333, 111LL, 222, 20);
     50 
     51 	/* test %'d formats */
     52 	print("%'d %'d %'d\n", 1, 2222, 33333333);
     53 	print("%'019d\n", 0);
     54 	print("%08d %08d %08d\n", 1, 2222, 33333333);
     55 	print("%'08d %'08d %'08d\n", 1, 2222, 33333333);
     56 	print("%'x %'X %'b\n", 0x11111111, 0xabcd1234, 12345);
     57 	print("%'lld %'lld %'lld\n", 1LL, 222222222LL, 3333333333333LL);
     58 	print("%019lld %019lld %019lld\n", 1LL, 222222222LL, 3333333333333LL);
     59 	print("%'019lld %'019lld %'019lld\n", 1LL, 222222222LL, 3333333333333LL);
     60 	print("%'020lld %'020lld %'020lld\n", 1LL, 222222222LL, 3333333333333LL);
     61 	print("%'llx %'llX %'llb\n", 0x111111111111LL, 0xabcd12345678LL, 112342345LL);
     62 	return 0;
     63 }