0035-setlocale.c - scc - simple c99 compiler
(HTM) git clone git://git.simple-cc.org/scc
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
0035-setlocale.c (1284B)
---
1 #include <assert.h>
2 #include <locale.h>
3 #include <stdio.h>
4 #include <string.h>
5
6 /*
7 output:
8 testing
9 done
10 end:
11 */
12
13 int
14 main()
15 {
16 puts("testing");
17 assert(!strcmp(setlocale(LC_ALL, NULL), "C"));
18 assert(!strcmp(setlocale(LC_COLLATE, NULL), "C"));
19 assert(!strcmp(setlocale(LC_CTYPE, NULL), "C"));
20 assert(!strcmp(setlocale(LC_MONETARY, NULL), "C"));
21 assert(!strcmp(setlocale(LC_NUMERIC, NULL), "C"));
22 assert(!strcmp(setlocale(LC_TIME, NULL), "C"));
23
24 assert(!strcmp(setlocale(LC_ALL, "C"), "C"));
25 assert(!strcmp(setlocale(LC_COLLATE, "C"), "C"));
26 assert(!strcmp(setlocale(LC_CTYPE, "C"), "C"));
27 assert(!strcmp(setlocale(LC_MONETARY, "C"), "C"));
28 assert(!strcmp(setlocale(LC_NUMERIC, "C"), "C"));
29 assert(!strcmp(setlocale(LC_TIME, "C"), "C"));
30
31 assert(!setlocale(LC_ALL, "invalid-locale"));
32 assert(!setlocale(LC_COLLATE, "invalid-locale"));
33 assert(!setlocale(LC_CTYPE, "invalid-locale"));
34 assert(!setlocale(LC_MONETARY, "invalid-locale"));
35 assert(!setlocale(LC_NUMERIC, "invalid-locale"));
36 assert(!setlocale(LC_TIME, "invalid-locale"));
37
38 assert(setlocale(LC_ALL, ""));
39 assert(setlocale(LC_COLLATE, ""));
40 assert(setlocale(LC_CTYPE, ""));
41 assert(setlocale(LC_MONETARY, ""));
42 assert(setlocale(LC_NUMERIC, ""));
43 assert(setlocale(LC_TIME, ""));
44 puts("done");
45
46 return 0;
47 }