指针和内存单元
指针: 地址
内存单元: 计算机中内存最小的存储单元。
指针的定义和使用
int a = 10;
int *p = &a; *表示指针变量
*p = 250; 指针的解引用,间接引用
*p: 表示将p变量的内容取出来, 当成地址看待, 再找到该地址的内存空间
如果做左值: 存数据到空间
如果做右值:取出空间的内容
#include<stdio.h> int main (void) { int a = 10; // 定义变量a , 并赋值为10 int *p = &a; // 定义一个指针变量, 并把a 变量的地址复制给指针变量p *p = 29000; // 表示将p变量的内容取出来, 当成地址看待, 再找到该地址的内存空间, 在把2900 写到这个内存空间 printf("a 变量的值为 %d", a); }
a 变量的值为 29000
#include<stdio.h> int main (void) { int a = 10; // 定义变量a , 并赋值为10 int *p = &a; // 定义一个指针变量, 并把a 变量的地址复制给指针变量p //*p = 29000; a = 350; printf("*p 变量的值为 %d", *p); // 表示将p变量的内容取出来, 当成地址看待, 再找到该地址的内存空间, 在取出这个内存空间里面的值 350
}
*p 变量的值为 350