#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:
|