1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| #include<stdio.h> int main() { int score[] = {90,95,89}; // 常规操作 printf("=================常规操作=================\n"); for (int i = 0; i < 3; ++i) { printf("score[%d]=%d,address=%p\n",i,score[i],&score[i]); }
// 数组名指向数组的首地址,因此,也可看成是指针 printf("=================数组当指针操作================\n"); for (int i = 0; i < 3; ++i) { printf("score[%d]=%d,address=%p\n",i,*(score+i),(score+i)); }
int *p; p = &score[0]; // 定义指针存放数组首地址 printf("=================指针常规操作=================\n"); for (int i = 0; i < 3; ++i) { printf("score[%d]=%d,address=%p\n",i,*(p+i),(p+i)); }
printf("=================把指针当数组=================\n"); for (int i = 0; i < 3; ++i) { printf("score[%d]=%d,address=%p\n",i,p[i],&p[i]); } return 0; }
|