温习指针
int number = 1024;
// %p表示输出指针类型的数据
int * ptr_num = &number;
printf("number 变量的地址是:%p\n", &number);
printf("指针ptr_num指向的地址是:%p\n", ptr_num);
// 输出指针所指向地址的值 使用间接运算符*
printf("ptr_num所指向的值是:%d\n", *ptr_num);
// 利用指针ptr_num改变指针所指向的值
*ptr_num = 1111;
printf("修改后,ptr_num所指向的值是:%d\n", *ptr_num);
printf("修改值后,指针ptr_num指向的地址是:%p\n", ptr_num);
printf("\n");
//指针进阶——使用指针的地址
int number2 = 2048;
int * ptr_num2 = &number2;
int ** ptr_num3 = &ptr_num2;
//此时一级指针的地址和二级指针指向的值是一样的
printf("*ptr_num2的地址是:%p\n", &ptr_num2);
printf("ptr_num2指向的地址是:%p\n", ptr_num2);
printf("ptr_num3指向的地址是:%p\n", ptr_num3);
printf("*ptr_num3指向的地址是:%p\n", *ptr_num3);
printf("指针ptr_num3指向的值是:%d\n", **ptr_num3);
运行结果:
number 变量的地址是:0061FF14
指针ptr_num指向的地址是:0061FF14
ptr_num所指向的值是:1024
修改后,ptr_num所指向的值是:1111
修改值后,指针ptr_num指向的地址是:0061FF14
*ptr_num2的地址是:0061FF0C
ptr_num2指向的地址是:0061FF10
ptr_num3指向的地址是:0061FF0C
*ptr_num3指向的地址是:0061FF10
指针ptr_num3指向的值是:2048