C指针随笔
有关C指针的简单使用,最近想回顾一下,就写了一个小demo。
#include <stdio.h>
int main()
{
int a[] = {1, 2, 3};
int *p;
p = a; // array's name is address,point also
printf("a[0] = %d\n", a[0]);
printf("*p = %d\n", *p);
printf("*(p+1) = %d\n", *(p + 1));
p = &a[2];
printf("*(p-1) = %d\n", *(p - 2));
return 0;
}
result:
a[0] = 1
*p = 1
*(p+1) = 2
*(p-1) = 1
涉及到的知识点有:
- 数组名就是数组的首元素地址,所以可以给指针赋值
- 指针可以和整数加减,达到向前或向后移动多少个元素的效果。