C语言学习 指针

编译器是visual studio

 

 

 代码

 1 #include <stdio.h>
 2 #include <io_utils.h>
 3 
 4 int main() {
 5   int a;
 6   scanf("%d", &a);
 7 
 8   int *p = &a;
 9   PRINT_HEX(p);
10   PRINT_HEX(&a);
11 
12   PRINT_INT(sizeof(int *));
13 
14   PRINT_INT(*p);
15   PRINT_INT(a);
16 
17   int **pp = &p;
18   // *pp => p;
19   return 0;
20 }
View Code

结果

 

*p 表示指针指向的变量a的值

p 表示指针指向的变量a的地址

 

 

 输入12, &a表示变量a的内存地址,p也表示a的内存地址, 内存中存储的是16进制,  0c

 

 pp存放12这个值的地址的位置, 或者是 p指针的内存地址

 

 

 

&pp 存放 12这个值的地址的位置的地址位置, p指针的内存地址的内存地址

 

 3块内存对应的是 普通变量, 普通变量的指针, 普通变量的指针的指针

 

posted @ 2023-02-04 13:31  泥古拉斯赵四  阅读(11)  评论(0编辑  收藏  举报