newlocale(3) 的手册页部分说明:
The mask is the logical OR of the following:
LC_COLLATE_MASK Collation
LC_CTYPE_MASK Character type
LC_MESSAGES_MASK Messages
LC_MONETARY_MASK Monetary
LC_NUMERIC_MASK Numeric
LC_TIME_MASK Time
LC_ALL_MASK The logical OR of all of the above
但它并没有具体说明每个掩码位的实际含义。在我的例子中,我需要 AM_STR
、PM_STR
的本地化字符串、月份缩写(ABMON_1
、...)、完整的月份名称(MON_1
, ...),工作日缩写(ABDAY_1
, ...),以及工作日全称(DAY_1
, ...)。
作为一个有根据的猜测,我想我需要 LC_MESSAGES_MASK
- 但我是否还需要 LC_TIME_MASK
?
您需要LC_TIME_MASK
;您不需要 LC_MESSAGES_MASK
来满足您规定的要求。
LC_MESSAGES
控制错误消息,而不是时间格式。要查看诸如 LC_TIME
之类的“未屏蔽”名称的含义,请参阅 setlocale(3)
的手册页。 .它们是标准的 C(尽管链接到的 POSIX 页面包含一些扩展 — 特别是 "POSIX"
语言环境)。
我是一名优秀的程序员,十分优秀!