C语言进阶3:二维指针
1、什么是二维指针?
二维指针与一维指针一样都是保存地址的变量。
1.1 示例1
#include <stdio.h>
int main(){
int n=0,m=0;
printf("&n=%p\n",&n);
printf("&m=%p\n",&m);
int *p=&n;
int **pp=&p;
printf("n=%d\n",*p);
printf("%d\n",**pp);
printf("n=%d\nm=%d\n",n,m);
}
一维指针存放变量地址,二维指针存放一维指针地址。
1.2 示例2
#include <stdio.h>
int main(){
//指针与数组之间关系
int arr[6]={
1,2,3,4,5,6};
int *p = arr;
for(int i=0;i<6;++i){
printf("%d\n",p[i]);
}
//二维指针与数组之间的关系
int arr2[6]={
7,8,9,10,11,12};