Manual Page Search Parameters

STRERROR(3) Library Functions Manual STRERROR(3)


strerror, strerror_rget error message string


#include <string.h>
char *
strerror(int errnum);
strerror_r(int errnum, char *strerrbuf, size_t buflen);


The strerror() and strerror_r() functions map the error number errnum to a language-dependent error message string.
strerror() returns a string containing a maximum of NL_TEXTMAX characters, including the trailing NUL. This string is not to be modified by the calling program, but may be overwritten by subsequent calls to strerror().
strerror_r() is a thread safe version of strerror() that places the error message in the specified buffer strerrbuf.


strerror() returns a pointer to the error message string. If an error occurs, the error code is stored in errno.
strerror_r() returns zero upon successful completion. If an error occurs, the error code is stored in errno and the error code is returned.


strerror() and strerror_r() may fail if:
errnum is not a valid error number. The returned error string will consist of an error message that includes errnum.
strerror_r() may fail if:
The error message is larger than buflen characters. The message will be truncated to fit.


intro(2), perror(3), setlocale(3)


The strerror() function conforms to ISO/IEC 9899:1999 (“ISO C99”). The strerror_r() function conforms to IEEE Std 1003.1-2008 (“POSIX.1”).


The strerror() function first appeared in 4.3BSD-Reno. The strerror_r() function first appeared in OpenBSD 3.3.
November 30, 2014 OpenBSD-current