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 }