DataType * functionName( .... )
{
...
}
|
int *f()
{
... this function will return a "pointer to int" ...
}
|
/* ====================================
f(A, i) returns the address of A[i]
==================================== */
int *f( int A[], int i )
{
int *p;
p = &A[i];
return p; // Shorter: return &A[i];
}
int main(int argc, char *argv[])
{
int A[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int *p, i;
p = f( A, 4 );
*p = 4000;
for ( i = 0; i < 10; i++ )
printf("%d ", A[i]);
printf("\n\n");
}
|
Output:
1 2 3 4 4000 6 7 8 9 10 |
How to run the program:
|