mirror of
https://github.com/lcn2/calc.git
synced 2025-08-19 01:13:27 +03:00
55 lines
1.5 KiB
Plaintext
55 lines
1.5 KiB
Plaintext
NAME
|
|
errno - return or set a stored error-number
|
|
|
|
SYNOPSIS
|
|
errno([errnum])
|
|
|
|
TYPES
|
|
errnum integer, 0 <= errnum <= 32767
|
|
|
|
return integer
|
|
|
|
DESCRIPTION
|
|
|
|
Whenever an operation or evaluation of function returns an error-value,
|
|
the numerical code for that value is stored as calc_errno.
|
|
|
|
errno() returns the current value of calc_errno.
|
|
|
|
errno(errnum) sets calc_errno to the value errnum and returns its
|
|
previous value.
|
|
|
|
To detect whether an error occurs during some sequence of operations,
|
|
one may immediately before that sequence set the stored error-number
|
|
to zero by errno(0), and then after the operations, whether or not
|
|
an error has occurred will be indicated by errno() being nonzero or
|
|
zero. If a non-zero value is returned, that value will be the code
|
|
for the most recent error encountered.
|
|
|
|
The default argument for the functions error() and strerror() is the
|
|
currently stored error-number; in particular, if no error-value has
|
|
been returned after the last errno(0), strerror() will return
|
|
"No error".
|
|
|
|
EXAMPLE
|
|
Assuming there is no file with name "not_a_file"
|
|
> errno(0)
|
|
> errmax(errcount()+4)
|
|
0
|
|
> badfile = fopen("not_a_file", "r")
|
|
> print errno(), error(), strerror()
|
|
2 System error 2 No such file or directory
|
|
|
|
> a = 1/0
|
|
> print errno(), error(), strerror()
|
|
10001 Error 10001 Division by zero
|
|
|
|
LIMITS
|
|
none
|
|
|
|
LIBRARY
|
|
none
|
|
|
|
SEE ALSO
|
|
errmax, errcount, error, strerror, iserror, newerror, errorcodes
|