c_locale_dummy.c

来自「stl的源码」· C语言 代码 · 共 486 行 · 第 1/2 页

C
486
字号
int _WLocale_mb_cur_max (struct _Locale_codecvt *lcodecvt) { return 1; }int _WLocale_mb_cur_min (struct _Locale_codecvt *lcodecvt) { return 1; }int _WLocale_is_stateless (struct _Locale_codecvt *lcodecvt) { return 1; }size_t _WLocale_mbtowc(struct _Locale_codecvt *lcodecvt,                       wchar_t *to,                       const char *from, size_t n,                       mbstate_t *st){ *to = *from; return 1; }size_t _WLocale_wctomb(struct _Locale_codecvt *lcodecvt,                       char *to, size_t n,                       const wchar_t c,                       mbstate_t *st){ *to = (char)c; return 1; }size_t _WLocale_unshift(struct _Locale_codecvt *lcodecvt,                        mbstate_t *st,                        char *buf, size_t n, char ** next){ *next = buf; return 0; }#endif/* Collate */ int _Locale_strcmp(struct _Locale_collate* lcol,                    const char* s1, size_t n1, const char* s2, size_t n2) {  int ret = 0;  char buf1[64], buf2[64];  while (n1 > 0 || n2 > 0) {    size_t bufsize1 = n1 < 63 ? n1 : 63;    size_t bufsize2 = n2 < 63 ? n2 : 63;    _STLP_STRNCPY(buf1, 64, s1, bufsize1); buf1[bufsize1] = 0;    _STLP_STRNCPY(buf2, 64, s2, bufsize2); buf2[bufsize2] = 0;    ret = strcmp(buf1, buf2);    if (ret != 0) return ret < 0 ? -1 : 1;    s1 += bufsize1; n1 -= bufsize1;    s2 += bufsize2; n2 -= bufsize2;  }  return ret == 0 ? 0 : (ret < 0 ? -1 : 1);}#ifndef _STLP_NO_WCHAR_Tint _WLocale_strcmp(struct _Locale_collate* lcol,                    const wchar_t* s1, size_t n1, const wchar_t* s2, size_t n2) {  int ret = 0;  wchar_t buf1[64], buf2[64];  while (n1 > 0 || n2 > 0) {    size_t bufsize1 = n1 < 63 ? n1 : 63;    size_t bufsize2 = n2 < 63 ? n2 : 63;    _STLP_WCSNCPY(buf1, 64, s1, bufsize1); buf1[bufsize1] = 0;    _STLP_WCSNCPY(buf2, 64, s2, bufsize2); buf2[bufsize2] = 0;    ret = wcscmp(buf1, buf2);    if (ret != 0) return ret < 0 ? -1 : 1;    s1 += bufsize1; n1 -= bufsize1;    s2 += bufsize2; n2 -= bufsize2;  }  return ret == 0 ? 0 : (ret < 0 ? -1 : 1);}#endifsize_t _Locale_strxfrm(struct _Locale_collate* lcol,                       char* dest, size_t dest_n,                       const char* src, size_t src_n) {  if (dest != 0) {    _STLP_STRNCPY(dest, dest_n, src, dest_n - 1); dest[dest_n - 1] = 0;  }  return src_n;}#ifndef _STLP_NO_WCHAR_Tsize_t _WLocale_strxfrm(struct _Locale_collate* lcol,                        wchar_t* dest, size_t dest_n,                        const wchar_t* src, size_t src_n) {  if (dest != 0) {    _STLP_WCSNCPY(dest, dest_n, src, dest_n - 1); dest[dest_n - 1] = 0;  }  return src_n;}#endif/* Numeric */char _Locale_decimal_point(struct _Locale_numeric* lnum){ return '.'; }char _Locale_thousands_sep(struct _Locale_numeric* lnum){ return ','; }const char* _Locale_grouping(struct _Locale_numeric * lnum){ return _empty_str; }const char * _Locale_true(struct _Locale_numeric * lnum){ return "true"; }const char * _Locale_false(struct _Locale_numeric * lnum){ return "false"; }#ifndef _STLP_NO_WCHAR_Twchar_t _WLocale_decimal_point(struct _Locale_numeric* lnum){ return L'.'; }wchar_t _WLocale_thousands_sep(struct _Locale_numeric* lnum){ return L','; }const wchar_t * _WLocale_true(struct _Locale_numeric* lnum, wchar_t* buf, size_t bufSize){ return L"true"; }const wchar_t * _WLocale_false(struct _Locale_numeric* lnum, wchar_t* buf, size_t bufSize){ return L"false"; }#endif/* Monetary */const char* _Locale_int_curr_symbol(struct _Locale_monetary * lmon){ return _empty_str; }const char* _Locale_currency_symbol(struct _Locale_monetary * lmon){ return _empty_str; }char        _Locale_mon_decimal_point(struct _Locale_monetary * lmon){ return '.'; }char        _Locale_mon_thousands_sep(struct _Locale_monetary * lmon){ return ','; }const char* _Locale_mon_grouping(struct _Locale_monetary * lmon){ return _empty_str; }const char* _Locale_positive_sign(struct _Locale_monetary * lmon){ return _empty_str; }const char* _Locale_negative_sign(struct _Locale_monetary * lmon){ return _empty_str; }char        _Locale_int_frac_digits(struct _Locale_monetary * lmon){ return 0; }char        _Locale_frac_digits(struct _Locale_monetary * lmon){ return 0; }int         _Locale_p_cs_precedes(struct _Locale_monetary * lmon){ return CHAR_MAX; }int         _Locale_p_sep_by_space(struct _Locale_monetary * lmon){ return CHAR_MAX; }int         _Locale_p_sign_posn(struct _Locale_monetary * lmon){ return CHAR_MAX; }int         _Locale_n_cs_precedes(struct _Locale_monetary * lmon){ return CHAR_MAX; }int          _Locale_n_sep_by_space(struct _Locale_monetary * lmon){ return CHAR_MAX; }int          _Locale_n_sign_posn(struct _Locale_monetary * lmon){ return CHAR_MAX; }#ifndef _STLP_NO_WCHAR_Tconst wchar_t* _WLocale_int_curr_symbol(struct _Locale_monetary * lmon,                                        wchar_t* buf, size_t bufSize){ return _empty_wstr; }const wchar_t* _WLocale_currency_symbol(struct _Locale_monetary * lmon,                                        wchar_t* buf, size_t bufSize){ return _empty_wstr; }wchar_t        _WLocale_mon_decimal_point(struct _Locale_monetary * lmon){ return L'.'; }wchar_t        _WLocale_mon_thousands_sep(struct _Locale_monetary * lmon){ return L','; }const wchar_t* _WLocale_positive_sign(struct _Locale_monetary * lmon,                                      wchar_t* buf, size_t bufSize){ return _empty_wstr; }const wchar_t* _WLocale_negative_sign(struct _Locale_monetary * lmon,                                      wchar_t* buf, size_t bufSize){ return _empty_wstr; }#endif/* Time */static const char* full_monthname[] ={ "January", "February", "March", "April", "May", "June",  "July", "August", "September", "October", "November", "December" };const char * _Locale_full_monthname(struct _Locale_time * ltime, int n){ return full_monthname[n]; }static const char* abbrev_monthname[] ={ "Jan", "Feb", "Mar", "Apr", "May", "Jun",  "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };const char * _Locale_abbrev_monthname(struct _Locale_time * ltime, int n){ return abbrev_monthname[n]; }static const char* full_dayname[] ={ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };const char * _Locale_full_dayofweek(struct _Locale_time * ltime, int n){ return full_dayname[n]; }static const char* abbrev_dayname[] ={ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };const char * _Locale_abbrev_dayofweek(struct _Locale_time * ltime, int n){ return abbrev_dayname[n]; }const char* _Locale_d_t_fmt(struct _Locale_time* ltime){ return "%m/%d/%y"; }const char* _Locale_d_fmt(struct _Locale_time* ltime){ return "%m/%d/%y"; }const char* _Locale_t_fmt(struct _Locale_time* ltime){ return "%H:%M:%S"; }const char* _Locale_long_d_t_fmt(struct _Locale_time* ltime){ return _empty_str; }const char* _Locale_long_d_fmt(struct _Locale_time* ltime){ return _empty_str; }const char* _Locale_am_str(struct _Locale_time* ltime){ return "AM"; }const char* _Locale_pm_str(struct _Locale_time* ltime){ return "PM"; }#ifndef _STLP_NO_WCHAR_Tstatic const wchar_t* full_wmonthname[] ={ L"January", L"February", L"March", L"April", L"May", L"June",  L"July", L"August", L"September", L"October", L"November", L"December" };const wchar_t * _WLocale_full_monthname(struct _Locale_time * ltime, int n,                                        wchar_t* buf, size_t bufSize){ return full_wmonthname[n]; }static const wchar_t* abbrev_wmonthname[] ={ L"Jan", L"Feb", L"Mar", L"Apr", L"May", L"Jun",  L"Jul", L"Aug", L"Sep", L"Oct", L"Nov", L"Dec" };const wchar_t * _WLocale_abbrev_monthname(struct _Locale_time * ltime, int n,                                          wchar_t* buf, size_t bufSize){ return abbrev_wmonthname[n]; }static const wchar_t* full_wdayname[] ={ L"Sunday", L"Monday", L"Tuesday", L"Wednesday", L"Thursday", L"Friday", L"Saturday" };const wchar_t * _WLocale_full_dayofweek(struct _Locale_time * ltime, int n,                                        wchar_t* buf, size_t bufSize){ return full_wdayname[n]; }static const wchar_t* abbrev_wdayname[] ={ L"Sun", L"Mon", L"Tue", L"Wed", L"Thu", L"Fri", L"Sat" };const wchar_t * _WLocale_abbrev_dayofweek(struct _Locale_time * ltime, int n,                                          wchar_t* buf, size_t bufSize){ return abbrev_wdayname[n]; }const wchar_t* _WLocale_am_str(struct _Locale_time* ltime,                               wchar_t* buf, size_t bufSize){ return L"AM"; }const wchar_t* _WLocale_pm_str(struct _Locale_time* ltime,                               wchar_t* buf, size_t bufSize){ return L"PM"; }#endif/* Messages */nl_catd_type _Locale_catopen(struct _Locale_messages* lmes, const char* name){ return -1; }void _Locale_catclose(struct _Locale_messages* lmes, nl_catd_type cat) {}const char* _Locale_catgets(struct _Locale_messages* lmes, nl_catd_type cat,                            int setid, int msgid, const char *dfault){ return dfault; }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?