0076-localeconv.c (1506B)
1 #include <assert.h> 2 #include <limits.h> 3 #include <locale.h> 4 #include <stdio.h> 5 #include <string.h> 6 7 /* 8 output: 9 testing 10 done 11 end: 12 */ 13 14 int 15 main(void) 16 { 17 struct lconv *lconv; 18 int ret; 19 20 puts("testing"); 21 lconv = localeconv(); 22 assert(lconv && strcmp(lconv->decimal_point, ".") == 0); 23 assert(lconv && *lconv->thousands_sep == '\0'); 24 assert(lconv && *lconv->grouping == '\0'); 25 assert(lconv && *lconv->mon_decimal_point == '\0'); 26 assert(lconv && *lconv->mon_thousands_sep == '\0'); 27 assert(lconv && *lconv->mon_grouping == '\0'); 28 assert(lconv && *lconv->positive_sign == '\0'); 29 assert(lconv && *lconv->negative_sign == '\0'); 30 assert(lconv && *lconv->currency_symbol == '\0'); 31 assert(lconv && *lconv->int_curr_symbol == '\0'); 32 assert(lconv && lconv->frac_digits == CHAR_MAX); 33 assert(lconv && lconv->p_cs_precedes == CHAR_MAX); 34 assert(lconv && lconv->n_cs_precedes == CHAR_MAX); 35 assert(lconv && lconv->p_sep_by_space == CHAR_MAX); 36 assert(lconv && lconv->n_sep_by_space == CHAR_MAX); 37 assert(lconv && lconv->p_sign_posn == CHAR_MAX); 38 assert(lconv && lconv->n_sign_posn == CHAR_MAX); 39 assert(lconv && lconv->int_frac_digits == CHAR_MAX); 40 assert(lconv && lconv->int_p_cs_precedes == CHAR_MAX); 41 assert(lconv && lconv->int_n_cs_precedes == CHAR_MAX); 42 assert(lconv && lconv->int_p_sep_by_space == CHAR_MAX); 43 assert(lconv && lconv->int_n_sep_by_space == CHAR_MAX); 44 assert(lconv && lconv->int_p_sign_posn == CHAR_MAX); 45 assert(lconv && lconv->int_n_sign_posn == CHAR_MAX); 46 puts("done"); 47 48 return 0; 49 }