#include #include #include void test(const char *locale_name) { time_t tt; struct tm tm; size_t buflen; const char *p; char buf[100]; const wchar_t *wp; wchar_t wbuf[100]; setlocale(LC_ALL, locale_name); /* tzname */ tzset(); for (p = tzname[0]; *p; ++p) printf("%02X ", (unsigned char)*p); printf("\n"); /* strftime */ buflen = strftime(buf, sizeof(buf), "%Z", &tm); if (buflen> 0) { for (p = buf; *p; ++p) printf("%02X ", (unsigned char)*p); printf("\n"); } /* wcsftime */ tt = time(NULL); tm = *localtime(&tt); buflen = wcsftime(wbuf, sizeof(wbuf), L"%Z", &tm); if (buflen> 0) { for (wp = wbuf; *wp; ++wp) printf("%04X ", (unsigned short)*wp); printf("\n"); } printf("\n"); } int main() { test("C"); /* 93 8C 8B 9E 20 28 95 57 8F 80 8E 9E 29 93 8C 8B 9E 20 28 95 57 8F 80 8E 9E 29 0093 008C 008B 009E 0020 0028 0095 0057 008F 0080 008E 009E 0029 */ test(""); /* MBCS (CP932 in my environment) */ /* 93 8C 8B 9E 20 28 95 57 8F 80 8E 9E 29 93 8C 8B 9E 20 28 95 57 8F 80 8E 9E 29 6771 4EAC 0020 0028 6A19 6E96 6642 0029 */ }

AltStyle によって変換されたページ (->オリジナル) /