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 + -
显示快捷键?