Next: Combining Variable Declarations, Up: Variable Declarations Contents
To declare a variable that is an array, write variable[length]
for
decorated-variable
:
int foo[5];
To declare a variable that has a pointer type, write *variable
for
decorated-variable
:
struct list_elt *foo;
These constructs nest. For instance,
int foo[3][5];
declares foo
as an array of 3 arrays of 5 integers each,
struct list_elt *foo[5];
declares foo
as an array of 5 pointers to structures, and
struct list_elt **foo;
declares foo
as a pointer to a pointer to a structure.
int **(*foo[30])(int, double);
declares foo
as an array of 30 pointers to functions (see Function
Pointers), each of which must accept two
arguments (one int
and one double
) and return type int **
.
void
bar (int size)
{
int foo[size];
…
}
declares foo
as an array of integers with a size specified at run time
when the function bar
is called.