Many languages have the concept of an item which holds a value which can be changed. These are called variables and have two fundamental properties: an identifier (a name, so we can refer to them) and a value (which we can change).
Names in C can consist of any alphabetic (including underscore) and numeric characters, and must start with a letter. (It is also possible but unwise to start the name with an underscore: there is an unwritten convention that such names are used by the assembler and so this will cause great confusion.)
For internal names, at least 31 characters are guaranteed unique; for external names, C has no control and so only 6 characters are guaranteed.
In addition, many languages expect you to declare the type of a variable, for example, whether it is to be used to hold integer values, or characters, or floating point numbers. In C we have to declare the variable explicitly as being of a particular type.
For example
int count;
says that we want a variable called count, to be of integer type (int is the standard way of declaring integers in C).
However C is a weakly-typed language, meaning that it does not rigidly constrain you to stay with the declared type (in contrast to Pascal or ML). For now we will ignore this flexibility and assume we mean what we declare.
maspjw@