From QB64 Wiki
The CONST statement globally defines one or more named numeric or string values which will not change while a program is running.
- CONST constantName = value[, ...]
- constantName is the constant name or list of names assigned by the programmer.
- value is the value to initialize the global constant which cannot change once defined:
- If constantName specifies a numeric type, value must be a numeric expression containing literals and other constants.
- If constantName specifies a string type, the value must be a literal value.
- The constantName does not have to include a type suffix! The datatype can be determined by the value.
- Constant values cannot use a variable, SUB or FUNCTION return value when defined.
- Constants cannot be re-assigned values. They retain the same value throughout all of the program procedures.
- Constants defined in module-level code have shared scope, so they can also be used in SUB or FUNCTION procedures.
- Constants defined in SUB or FUNCTION procedures are local to those procedures.
- CLEAR will not affect or change constant values.
Example: Display the circumference and area of circles:
' Declare a numeric constant approximately equal to the ratio of a circle's ' circumference to its diameter: CONST PI = 3.141593 ' Declare some string constants: CONST circumferenceText = "The circumference of the circle is" CONST areaText = "The area of the circle is" DO INPUT "Enter the radius of a circle or zero to quit"; radius IF radius = 0 THEN END PRINT circumferenceText; 2 * PI * radius PRINT areaText; PI * radius * radius ' radius squared PRINT LOOP
Enter the radius of a circle or zero to quit? 10 The circumference of the circle is 62.83186 The area of the circle is 314.1593 Enter the radius of a circle or zero to quit? 123.456 The circumference of the circle is 775.697 The area of the circle is 47882.23 Enter the radius of a circle or zero to quit? 0
- Explanation: PI cannot change as it is a mathematical constant so it is fitting to define it as a constant. Trying to change PI will result in a programming error.