FLOAT: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 17: Line 17:
* Values can be converted to 32 byte [[ASCII]] strings using [[_MK$]] and back with [[_CV]].
* Values can be converted to 32 byte [[ASCII]] strings using [[_MK$]] and back with [[_CV]].
* '''When a variable has not been assigned or has no type suffix, the value defaults to [[SINGLE]].'''
* '''When a variable has not been assigned or has no type suffix, the value defaults to [[SINGLE]].'''
* Note: OpenGL's [[_GL_FLOAT]] constant is a [[SINGLE]] (4 byte) floating point number, while a native QB64 _FLOAT is a 10-byte floating point number.





Revision as of 17:03, 20 July 2022

_FLOAT numerical values offer the maximum floating-point decimal precision available using QB64.


Syntax

DIM variable AS _FLOAT


Description

  • QB64 always allocates 32 bytes to store this value.
  • It is safe to assume this value is at least as precise as DOUBLE.
  • Under the current implementation it is stored in a 10-byte floating point variable.
  • _FLOAT variables can also use the ## variable name type suffix.
  • Values returned may be expressed using exponential or scientific notation using E for SINGLE or D for DOUBLE precision.
  • According to IEEE-754 this can store a value of up to 1.1897E+4932 compared to a DOUBLE which goes up to 1.7976E+308.
  • Floating decimal point numerical values cannot be _UNSIGNED.
  • Values can be converted to 32 byte ASCII strings using _MK$ and back with _CV.
  • When a variable has not been assigned or has no type suffix, the value defaults to SINGLE.


See also



Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link