C . , int a[25], 25 , a, () . a. a , , .
-, , , :
int a[25];
int *ptr;
ptr=a;
- ptr a, . . .
: , a[N], :
a==&a[0];
*a==a[0].
:
ptr=a+1;
ptr a, &a[1].
, , , :
int a[25];
int *ptr=a;
ptr+=3;
ptr a. ptr 3 3*sizeof(int), ptr a. , . , , ptr[3]=10 *(ptr+3)=10.
void , .
, C . , , a[7]=3 a[i+2]=5. , . , . , , , - , -. , ptr=a - a a[7], - ptr ptr[7].
*(a+3)=10 *(a+i+2)=5.
, . . . a[3] *(a+3).
, . . , a ptr,
|
|
*a=2;
a[0]=2;
*(a+0)=2;
*ptr=2;
ptr[0]=2;
*(ptr+0)=2;
2.
C , . . , , , . . , int a2[4][3] a2, , , . , int, .
, a2[4][3] : a2, int. a2. a2[2] *(a2+2). int a2[1][2] *(*(a2+1)+2) (*(a2+1))[2]. , C a2 a2[0], a2[1], a2[2], a2[3] , .
. , , float a3[3][4][5] , 60 float, float, float float.
, . . , . , .
, a2[1][2] ptr2, int *ptr2=a2[0], ptr2[1×3+2] ( 1 2 , 3 ) ptr2[5]. , a2[6] , 6 .
a3[2][3][4] , float *ptr3=a3[0][0], ptr3[2×20+3×5+4] ptr3[59].