Submitted DakeDesu, Mar 22 2004 05:39 AM | Last updated Mar 22 2004 05:39 AM
In most programming languages, there are areas of memory abstracted to contain certain values. Since most languages higher than C, do not worry about Registers and Memory Addresses, Variables are an abstract concept for those higher languages to store values that are not constant.
In most languages, constants are not much use, as you may be required to gather user input, or change various states of the program. Constants generally include anything not put into variables.
Just for further knowledge:
six = 4 + 2;
# In this fictional example, six is a variable, while 4 and 2 are constants (or atleast as far as the interpretor/compiler is concerned).
Generally the interpretor has the job of alloting various areas of memory for the variables to be put into and referenced from. In some languages (mostly compiled ones) variables may also be put into Registers--however that should be done with utmost caution.