C语言进阶——3.二维指针
1. 什么是二维指针
二维指针与一维指针一样都是保存地址的变量。
- 示例1
#include <stdio.h>
int main(){
int n=0,m=0;
printf("&n=%p\n",&n);
printf("&m=%p\n",&m);
int* p = NULL;
int** pp = &p;
scanf("%p",pp);
scanf("%d",p);
printf("n=%d\nm=%d\n",n,m);
}
一维指针存放变量地址,二维指针存放一维指针地址。
- 示例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