gpt4 book ai didi

c++ - 显示 c/c++ 中可用的系统错误

转载 作者:行者123 更新时间:2023-11-30 20:38:35 33 4
gpt4 key购买 nike

如何使用以下命令显示所有可用的系统错误号和错误消息,并显示 sys_nerr 的值:

extern char *sys_errlist[]
extern int sys_nerr

最佳答案

这取决于操作系统,但对于支持这些变量的操作系统,您可以尝试以下操作:

{
int i;

for (i = 0; i < sys_nerr; ++i)
fprintf(stdout, "%d : %s\n", i, strerror(i));
}

然后,如果您想摆脱 [0, sys_nerr) 范围内未使用的错误号,您可能需要进行一些特定于系统的过滤。例如,以下内容可能适用于 OSX:

{
int i;

for (i = 0; i < sys_nerr; ++i)
{
const char *errstr = strerror(i);

if (strncmp(errstr, "Unknown error:", 14))
fprintf(stdout, "%d : %s\n", i, errstr);
}
}

直接访问 sys_errlist 本身更加依赖于系统。对于未使用的错误号,条目可能为 NULL,或者可能有“未知错误...”字符串。这取决于。

关于c++ - 显示 c/c++ 中可用的系统错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28569037/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com