All
variables must be declared before use, although certain declarations can be
made implicitly by content. A declaration specifies a type, and contains a list
of one or more variables of that type, as in
int
lower, upper, step; char c,
line[1000];
Variables
can be distributed among declarations in any fashion; the lists above could
well be written as
int lower;
int upper; int
step; char c; char line[1000];
The latter
form takes more space, but is convenient for adding a comment to each
declaration for subsequent modifications.
A variable
may also be initialized in its declaration. If the name is followed by an
equals sign and an expression, the expression serves as an initializer, as
in
char
esc = '\\'; int i = 0;
int limit = MAXLINE+1; float eps = 1.0e-5;
If
the variable in question is not automatic, the initialization is done once
only, conceptionally before the program starts executing, and the initializer
must be a constant expression. An explicitly initialized automatic variable is
initialized each time the function or block it is in is entered; the
initializer may be any expression. External and static variables are
initialized to zero by default. Automatic variables for which is no explicit
initializer have undefined (i.e., garbage) values.
The
qualifier const can be applied to the declaration of
any variable to specify that its value will not be changed. For an array, the const qualifier says that the elements will
not be altered.
const double e = 2.71828182845905; const char msg[] = "warning: ";
The
const declaration can also be used with
array arguments, to indicate that the function does not change that array:
int
strlen(const char[]);
The result is
implementation-defined if an attempt is made to change a const.
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment