public int errno
A preprocessor macro that expands to a thread-local modifiable lvalue of type int.
Several standard library functions indicate errors by writing positive integers to errno. Typically, the value of errno is set to one the error codes, listed in Posix as macro constants that begin with the letter E, followed by uppercase letters or digits.
The value of errno is 0 at program startup, and although library functions are allowed to write positive integers to errno whether or not an error occurred, library functions never store 0 in errno.