basic math status (BM_STATUS) informations More...
#include <c_basic_math.h>
Public Attributes | |
| int | status |
| the complete status as 32 bit value | |
| struct { | |
| int undef: 1 | |
| status bit 0 = 1: value is not defined | |
| int overflow: 1 | |
| status bit 1 = 1: the result would be out of range and was limited | |
| int divideZero: 1 | |
| status bit 2 = 1: divide by zero | |
| int zeroDivZero: 1 | |
| status bit 3 = 1: zero divide by zero | |
| int baseExpZero: 1 | |
| status bit 4 = 1: 0 pow 0 (base and exponent are zero) | |
| int zeroExpNeg: 1 | |
| status bit 5 = 1: 0 pow -n (base = 0 and exp < 0) | |
| int negRadicand: 1 | |
| status bit 6 = 1: root with negative radicand | |
| int trigonArcErr: 1 | |
| status bit 7 = 1: arcSin or arcCos out of range [-1..+1] | |
| int trigonCotErr: 1 | |
| status bit 8 = 1: x for cot(x) is out of range [x = k * PI] | |
| int rootExpZero: 1 | |
| status bit 9 = 1: 0-root (zero exponent for the root) | |
| int logBaseZero: 1 | |
| status bit 10 = 1: 0-base (zero base for the logarithm) | |
| int logBaseOne: 1 | |
| status bit 11 = 1: 1-base (base=1 for logarithm) | |
| int int64overflow: 1 | |
| status bit 12 = 1: integer part out of range ( > max. of 64-bit integer) | |
| int strErr: 1 | |
| status bit 13 = 1: string error (convert from string to double failed) | |
| int intPowNegExp: 1 | |
| status bit 14 = 1: integer power failed because of negative exponent | |
| int unused: 15 | |
| status bit 15..29 are currently unused | |
| int underflow: 1 | |
| status bit 30 = 1: too close on zero | |
| int negative: 1 | |
| status bit 31 = 1: the value is negative | |
| }; | |
basic math status (BM_STATUS) informations
as unnamed union of a 32-bit integer value
or named bits for details
status bit 4 = 1: 0 pow 0 (base and exponent are zero)
base^exp = 0^0
status bit 2 = 1: divide by zero
numerator > 0 but denominator = 0
status bit 12 = 1: integer part out of range ( > max. of 64-bit integer)
integer part is higher then max. of 64-bit integer
status bit 14 = 1: integer power failed because of negative exponent
this bit indicates an error of e.g. 2^(-3)
status bit 11 = 1: 1-base (base=1 for logarithm)
base for the logarithm is 1
status bit 10 = 1: 0-base (zero base for the logarithm)
base of the logarithm is zero
status bit 31 = 1: the value is negative
is used together with "overflow"
status bit 6 = 1: root with negative radicand
radicand is negative
status bit 1 = 1: the result would be out of range and was limited
positive or negative overflow occured. With a negative overflow bit "negative" is also set
status bit 9 = 1: 0-root (zero exponent for the root)
root was called with zero exponent
the complete status as 32 bit value
use the following bit definitions for details
status bit 13 = 1: string error (convert from string to double failed)
this bit indicates an error of e.g. the sscanf function
status bit 7 = 1: arcSin or arcCos out of range [-1..+1]
arcSin or arcCos was called with value outside range of -1..+1
status bit 8 = 1: x for cot(x) is out of range [x = k * PI]
assignCot() was called with value x = k * PI (k element N)
| int BM_STATUS::undef |
status bit 0 = 1: value is not defined
up to now no value was assigned
status bit 30 = 1: too close on zero
the value would be lower than DBL_NOT_ZERO
status bit 15..29 are currently unused
unused bits to fill up to 32 bits
status bit 3 = 1: zero divide by zero
numerator = 0 and denominator = 0
status bit 5 = 1: 0 pow -n (base = 0 and exp < 0)
base = 0 and exp < 0
1.6.3