#include <stdio.h>
int main(int argc, char *argv[])
{
int a[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 777 };
int* p;
p = &a[0]; // p points to variable a[0]
printf("p[0] = %d, a[0] = %d\n", p[0], a[0] );
printf("p[1] = %d, a[1] = %d\n", p[1], a[1] );
printf("p[2] = %d, a[2] = %d\n", p[2], a[2] );
printf("p[3] = %d, a[3] = %d\n", p[3], a[3] );
}
|
You will notice that:
|
So:
|
|
|
p = &(a[0]); // Or: p = a
|
Then
p[i] and a[i] will both access the same array element !!!
(and will behave very similarly in many operations)
|
|
#include <stdio.h>
int main(int argc, char *argv[])
{
int a[10] = { 11, 22, 33, 44, 55, 66, 77, 88, 99, 777 };
int* p;
p = &a[1]; // p points to variable a[1] !!!
printf("p[0] = %d, a[1] = %d\n", p[0], a[1] );
printf("p[1] = %d, a[2] = %d\n", p[1], a[2] );
printf("p[2] = %d, a[3] = %d\n", p[2], a[3] );
printf("p[3] = %d, a[4] = %d\n", p[3], a[4] );
}
|
How to run the program:
|