Delphi Programming/Variables and constants
Variables are indispensable in programming. A program wouldn't do much things without variables.
A variable links a name to a value. You must not confuse its name and its value. A variable is not constant. It may change during the application execution.
Variables and program
editVariable declaration in the program
editTo declare a variable in a program, you have to write:
- var
- The variable name (var1, for example)
- :
- Its type (integer, for example)
- ;
An example:
function foo()
var
var1: integer;
var2: integer;
begin
// Some instructions
end;
You can also write:
function foo()
var
var1, var2: integer;
begin
// Some instructions
end;
Right syntax for the variable names
editWrong identifier | Violated rule | Right identifier |
---|---|---|
1name | Must not start with a number | name1 |
name.2 | Dots are not allowed | name_2 |
-name-3 | Dashes are not allowed | _name_3 |
Variable name | Spaces are not allowed | Variable_name |
déjà_vu | Accented characters are not allowed | deja_vu |
You don't have to worry about lowercase and uppercase as Delphi is case-insensitive.
Display a variable
editIt's easy to display a variable in an application. In a console application, you use the command
WriteLn(variableToDisplay);
.
Here is the result in a whole application:
program Display_a_variable;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
var1:integer;
begin
var1:= 12
WriteLn (var1);
ReadLn;
end.
So this code will display 12.
- Remark: If you don't want the display of a new line, use the Write function rather than WriteLn .
- Remark: You can use the ReadLn function to avoid the console from closing too quickly, but the actual feature of this function is described below.
- Remark: In GUI applications, you display variables in visual components.
Retrieve a variable
editIt's easy too. You have to call the ReadLn(variable); function.
You have to first declare the variable you want to use. Here is a whole code:
program Retrieve_a_Variable;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
var1:integer;
begin
ReadLn (var1);
end.
In the next pages, we will see how to operate variable additions, use variables in loops and conditions, etc...
- Remark: If you don't want to skip a line after the entry, use the Read function rather than ReadLn .
Assignment
editYou can set a value to a variable at any time in a program, from another variable for example:
program Assignment;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
sourceVariable:integer;
targetVariable:integer;
begin
ReadLn (sourceVariable);
targetVariable := sourceVariable;
end.
The changed variable is on the left and the variable whose value is duplicated is on the right. Do not confuse.
The constants
editIntroduction
editThe constants are similar to variables, except one point: they can't change their value during the execution.
The constants of the system
editThose constants specify all the values that are native and defined in the header files.
Example:
- stdout points on the screen buffer
- stdin points on the keyboard buffer
The symbolic constants
editThe symbolic constants are defined by the developer. They work as the variables, except for their declaration.
To declare a constant, you have to declare it after the reserved keyword const
instead of var
.
program Declare_constant;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
const1 = 12;
var
var1:integer;
begin
// Instructions
end.
Write an application that asks the user its age and then display it.
program Ask_your_age;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
age:integer;
begin
WriteLn ('How old are you?');
ReadLn (age);
Write ('You are ');
Write (age);
WriteLn (' year(s) old.');
end.