Skip to content

FloatIsZero

FloatIsZero

Description

Test whether a floating-point value is exactly zero.

Parameters

Name Direction Description
value in Float to test

Usage example (from documentation)

  bool zero = FloatIsZero(&value);

Returns

true when the significand is zero.

Usage example (Cross-references)

Usage examples (Cross-references)
        i64 exponent    = 0;
    
        if (FloatIsZero(value)) {
            if (value->negative) {
                StrPushBack(&result, '-');
        ValidateFloat(value);
    
        if (FloatIsZero(value)) {
            value->exponent = target_exponent;
            return;
        ValidateFloat(rhs);
    
        if (FloatIsZero(lhs) && FloatIsZero(rhs)) {
            return 0;
        }
    }
    
    bool FloatIsZero(Float *value) {
        ValidateFloat(value);
        return IntIsZero(&value->significand);
    bool FloatIsNegative(Float *value) {
        ValidateFloat(value);
        return !FloatIsZero(value) && value->negative;
    }
        }
    
        if (FloatIsZero(value)) {
            IntDeinit(result);
            *result = temp;
        ValidateFloat(value);
    
        if (FloatIsZero(value)) {
            return StrInitFromZstr("0");
        }
        ValidateFloat(rhs);
    
        if (FloatIsZero(lhs) && FloatIsZero(rhs)) {
            return 0;
        }
        ValidateFloat(value);
    
        if (!FloatIsZero(value)) {
            value->negative = !value->negative;
        }
        ValidateFloat(b);
    
        if (FloatIsZero(b)) {
            LOG_FATAL("Division by zero");
        }
            LOG_FATAL("Division by zero");
        }
        if (FloatIsZero(a)) {
            Float zero = FloatInit();
            float_replace(result, &zero);
    
    bool test_float_is_zero(void) {
        WriteFmt("Testing FloatIsZero\n");
    
        Float zero  = FloatInit();
        Float value = FloatFromStr("0.001");
    
        bool result = FloatIsZero(&zero);
        result      = result && !FloatIsZero(&value);
    
        bool result = FloatIsZero(&zero);
        result      = result && !FloatIsZero(&value);
    
        FloatDeinit(&zero);
        Float value = FloatInit();
    
        bool result = FloatIsZero(&value);
        result      = result && !FloatIsNegative(&value);
        result      = result && (FloatExponent(&value) == 0);
        FloatClear(&value);
    
        bool result = FloatIsZero(&value);
        result      = result && !FloatIsNegative(&value);
        result      = result && (FloatExponent(&value) == 0);
Last updated on