我一直在浏览C文档here
我试图运行示例
#define __STDC_WANT_LIB_EXTl__ l
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <locale.h>
int main(void)
{
FILE *fp = fopen(tmpnam((char[L_tmpnam]){0}), "r");
if (fp==NULL) {
printf("File opening failed: %s\n", strerror(errno));
setlocale(LC_MESSAGES, "de_DE.utf8");
printf("Now in German: %s\n", strerror(errno));
#ifdef __STDC_LIB_EXTl__
setlocale(LC_ALL, "zh_CN.utf8");
size_t errmsglen = strerrorlen_s(errno) + l;
char errmsg[errmsglen];
strerror_s(errmsg, errmsglen, errno);
printf("Now in Chinese: %s\n", errmsg);
#endif // __STDC_LIB_EXTl__
}
}
但我无法建立它。我收到以下错误:
**错误:'LC_MESSAGES'未声明(首次使用此功能)
setlocale(LC_MESSAGES, "de_DE.utf8"); ^
如何成功构建它?