pointer2.c
来自「Linux 下 C 库及常用 系统调用的使用事例」· C语言 代码 · 共 34 行
C
34 行
#include <stdio.h>int main(){ int *p1, *p2, a, b; a = 1; b = 20; /*给p1,p2动态分配内存*/ if((p1 = (int *)malloc(sizeof(int))) == NULL) { perror(malloc); return; } if((p2 = (int *)malloc(sizeof(int))) == NULL) { perror(malloc); return; }; printf("a = %d, b = %d\n",a ,b); /*此时"*p1"、"*p2"的值还未初始化*/ printf("*p1 = %d, *p2 = %d\n", *p1, *p2); printf("&a = 0x%x, &b = 0x%x\n",&a ,&b); /*注意此时,a、b的地址和p1、p2的地址是不同的*/ printf("p1 = 0x%x, p2 = 0x%x\n", p1, p2); *p1 = b; *p2 = a; printf("after changing *p1, a also changed correspondingly......\n"); /*此时a、b的值没有发生改变*/ printf("a = %d, b = %d\n",a ,b); printf("*p1 = %d, *p2 = %d\n", *p1, *p2); free(p1); free(p2);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?