If p points to a struct typed variable, then:
p->member ≡ (*p).member
|
that we learned in this webpage: click here
|
|
Evidence that [ ] is an operator:
|
|
|
Note:
|
|
|
#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] );
}
|
#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] );
}
|
How to run the program:
|