std::strerror(3) C++ Standard Libary std::strerror(3) NAME std::strerror - std::strerror Synopsis Defined in header <cstring> char* strerror( int errnum ); Returns a pointer to the textual description of the system error code errnum, identical to the description that would be printed by std::perror(). errnum is usually acquired from the errno variable, however the function accepts any value of type int. The contents of the string are locale-specific. The returned string must not be modified by the program, but may be overwritten by a subsequent call to the strerror function. strerror is not required to be thread-safe. Implementations may be returning different pointers to sta- tic read-only string literals or may be returning the same pointer over and over, pointing at a static buffer in which strerror places the string. Parameters errnum - integer value referring to an error code Return value Pointer to a null-terminated byte string corresponding to the errno er- ror code errnum. Notes POSIX allows subsequent calls to strerror to invalidate the pointer value returned by an earlier call. It also specifies that it is the LC_MESSAGES locale facet that controls the contents of these messages. POSIX has a thread-safe version called strerror_r defined. Glibc defines an incompatible version. Example // Run this code #include <cerrno> #include <clocale> #include <cmath> #include <cstring> #include <iostream> int main() { const double not_a_number = std::log(-1.0); std::cout << not_a_number << '\n'; if (errno == EDOM) { std::cout << "log(-1) failed: " << std::strerror(errno) << '\n'; std::setlocale(LC_MESSAGES, "de_DE.utf8"); std::cout << "Or, in German, " << std::strerror(errno) << '\n'; } } Possible output: nan log(-1) failed: Numerical argument out of domain Or, in German, Das numerische Argument ist ausserhalb des Definitionsbere- iches See also displays a character string corresponding of the current perror error to stderr (function) E2BIG, EACCES, ..., EXDEV macros for standard POSIX-compatible error conditions (macro constant) C documentation for strerror http://cppreference.com 2024.06.10 std::strerror(3)
NAME | Synopsis | Parameters | Return value | Notes | Example | Possible output: | See also
Want to link to this manual page? Use this URL:
<https://man.FreeBSD.org/cgi/man.cgi?query=std::strerror&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>