5
我正在修复一些使用strerror
(非线程安全)的多线程的Linux代码。我发现strerror_r
和strerror_l
都是线程安全的。由于strerror_r
的不同定义(取决于_GNU_SOURCE
它有不同的定义)我想使用新的strerror_l
函数,但是我应该如何获取当前语言环境的locale_t
对象?我没有使用iconv
或任何东西,只是简单的libc,我不明白我如何获得“默认区域设置”对象(我不在乎打印错误的语言,我只想要一个人类可读的字符串。)如何在当前语言环境中使用strerror_l?