当前位置: C语言 -- 标准库 -- <string.h> -- strerror

strerror函数


概要:
#include <string.h>
char *strerror(int errnum);

描述:

该函数将参数errnum值映射到描述错误情况的信息字符串。参数errnum值通常来自宏errno,但strerror函数应将int类型的任意值映射到信息字符串。

程序不可以修改返回指针指向的字符串,但后续调用strerror函数可以覆盖该字符串。


strerror函数不需要避免与其它strerror函数调用发生数据竞争。实现应像没有库函数调用strerror函数一样。

ISO/IEC 9899:2018标准定义了该函数的安全版本strerror_s


参数:
int errnum

错误编号。


返回值:

函数返回一个指向字符串的指针,字符串内容与当前语言环境有关。


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
/*函数strerror范例*/

#include <errno.h>
#include <math.h>
#include <stdio.h>
#include <string.h>

int main(void)
{
    double a;
    errno = 0;

    a = sqrt(-1.0);
    printf("Error: %s\n", strerror(errno));
    
    return 0;
}


输出:

Error: Domain error


相关内容:
memset 填充内存区域的函数。
strlen 计算字符串长度的函数。