CATOPEN - Linux手册页
Linux程序员手册 第3部分
更新日期: 2015-08-08
名称
catopen,catclose-打开/关闭消息目录
语法
#包括
nl_catd catopen(const char * name,int flag);复制代码
int catclose(nl_catd目录);
说明
函数catopen()打开消息目录并返回目录描述符。描述符在catclose()或execve(2)之前一直有效。如果使用文件描述符来实现目录描述符,则将设置FD_CLOEXEC标志。
参数名称指定要打开的消息目录的名称。如果name指定绝对路径(即包含aq / aq),则name指定消息目录的路径名。否则,将使用环境变量NLSPATH来代替%N的名称(请参阅locale(7))。未指定当进程具有root特权时是否使用NLSPATH。如果环境中不存在NLSPATH,或者如果无法在其指定的任何路径中打开消息目录,则使用实现定义的路径。当flag参数为NL_CAT_LOCALE时,后一个默认路径可能取决于LC_MESSAGES语言环境设置,而当flag参数为0时,取决于LANG环境变量。更改语言环境的LC_MESSAGES部分可能会使打开的目录描述符无效。
catopen()的flag参数用于指示要使用的语言的来源。如果将其设置为NL_CAT_LOCALE,则它将对LC_MESSAGES使用当前的语言环境设置。否则,它将使用LANG环境变量。
函数catclose()关闭目录标识的消息目录。它会使对目录定义的消息目录的所有后续引用无效。
返回值
成功时,函数catopen()返回nl_catd类型的消息目录描述符。失败时,它返回(nl_catd)-1并设置errno来指示错误。可能的错误值包括open(2)调用的所有可能的值。
函数catclose()成功返回0,失败返回-1。
环境
- LC_MESSAGES
- 可能是LC_MESSAGES语言环境设置的来源,因此,如果将标志设置为NL_CAT_LOCALE,则可以确定要使用的语言。
- LANG
- 如果标志为0,则使用的语言。
属性
有关本节中使用的术语的说明,请参见attribute(7)。
Interface | Attribute | Value |
catopen() | Thread safety | MT-Safe env |
catclose() | Thread safety | MT-Safe |
遵循规范
POSIX.1-2001,POSIX.1-2008。
备注
以上是POSIX.1的描述。 NL_CAT_LOCALE的glibc值为1。默认路径有所不同,但通常查看/ usr / share / locale下的许多位置。
出版信息
这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/。