# Real32 Data Type

Holds signed 32-bit (4-byte) IEEE floating-point values in the range −3.4028235E+38 to −1.401298E−45 for negative values and 1.401298E−45 to 3.4028235E+38 for positive values.

## Instructions

- Precision
- Floating-point data types cannot store all values accurately. Operations, such as when values are compared, can cause results that you think are incorrect. See Troubleshooting Data Types for more information.
- Space efficiency
- You can use
`Real32`

in conditions where the increased precision of`Real64`

is not necessary. Some conditions can let the ViviFire runtime decrease the memory that your program uses. - Default value
- When you declare a variable of type
`Real32`

and do not initialize it, its default value is zero (0.0). - Type changes
`Real32`

widens to`Real64`

,`Real`

, or`Real128`

without risk of overflow.- Zeros at the end
- The floating-point data types usually cannot show 0 characters at the end, after the decimal point. Thus numbers such as 1.4200 and 1.42 are the same value. If you must show zeros at the end, then you must use a formatter procedure.
- Type characters
`Real32`

has no type characters.

## Shared methods and properties

`Real32.Default As Real32`

- Returns the default value,
`0.0`

. `Real32.Epsilon As Real32`

- Returns the smallest difference between two values.
`Real32.IsInf(num As Real32) As Boolean`

- Returns true if
`num`

is infinity (positive or negative). Mathematical overflow is one cause of this result. `Real32.IsNaN(num As Real32) As Boolean`

- Returns true if
`num`

is not a number (Nan). “Zero divided by zero” and “square root of a negative” are two causes of this result. `Real32.IsNegInf(num As Real32) As Boolean`

- Returns true if
`num`

is negative infinity. `Real32.IsPosInf(num As Real32) As Boolean`

- Returns true if
`num`

is positive infinity. `Real32.Max As Real32`

- Returns the maximum positive value.
`Real32.Min As Real32`

- Returns the minimum negative value.
`Real32.Parse(str As String, Optional #fmt As Format) As Real32`

- Tries to parse a string that shows as a floating-point number.
- If
`#fmt`

is not given or is`#Null`

, then it uses the format of the local culture. Or you can be explicit with`Format.UserLocale`

. - If
`#fmt`

is`Format.RealLiteral`

, then it uses the format of a literal of type`Real32`

. `Real32.Size As Int`

- Returns the number of available bytes. This is always 4.

## Examples

```
Dim foo As Real32
```