普通变量在栈空间内,地址由大到小存储
而数组,申请一块连续内存,从小到大
指针:
1、指针:等同于地址,数据类型*指针名;
*号:定义指针的时候,类型说明符(说明后面紧跟的变量是一个指针变量)
&号:
2、指针怎么定义,怎么初始化
3、指针怎么使用
4、指针如何引用数组
4.1:指针怎么指向数组
4.2:指针+1 指针-1指针-指针 指针+指针
4.3:如何通过指针的方式访问数组
4.4:在函数传参的时候,数组名会退化成指针
字符数组
字符数组怎是定义,怎么使用?
字符数组和字符串的区别?
数组名还表示数组首元素的地址
对于指针+1来说,表示加一个格子;指针-1,表示退一个格子。不允许*2或者%2。
在同一数组内,指针-指针代表两个指针中间有多少个格子,指针+指针没有意义
怎么访问数组内元素值
1、通过数组下标 a r r[7] 7[arr]
2、通过指针解引用去访问 *(p+7) *(7+arr)
int main()
{
int arr[10] = {1,2,3,4,5,6,7,8,9,10};
int *p = arr;
printf("%d\n",arr[0]);
printf("%d\n",*p);
printf("%d\n",p[1]);