指针和指针变量
- 指针就是地址,地址就是指针
- 地址就是存放单元的编号
- 指针变量是存放地址的变量
- 指针和指针变量是两个不同的概念,但是要注意,通常我们叙述时会把指针变量简称为指针,实际他们含义并不一样
指针热身-1
1 #include <stdio.h> 2 3 int main(void) 4 { 5 int * p; //p是变量的名字,int * 表示p变量存放的是int变量的地址 6 // int *p不表示一个名字叫做p的变量 7 //int*p应该理解为p是变量名,p变量的数据类型是int *类型 8 // 所谓 int *类型实际就是存放int变量地址的类型 9 int i=3; 10 int j; 11 p=&i; 12 /* 13 1.p保存了i的地址,因此p指向i; 14 2.p不是i,i也不是p,更准确的说,修改p的值不影响i的值,修改i的值也不影响p的值 15 3.如果一个指针变量指向了某个普通变量则 16 *的指针变量 就完全等同于 普通变量 17 例子: 18 如果p是个指针变量,并且p存放了普通变量i的地址 19 则p指向了普通变量i 20 *p 完全等同于 i 21 或者说 在所有出现*p的地方都可以替换成i 22 *p 就是以p的内容为地址的变量 23 */ 24 // p=i; //error,因为类型不一致,p只能存放int类型变量的地址,不能存放int类型变量的值 25 j = *p; //等价于j= i 26 printf("i=%d,j= %d",i,j); 27 return 0; 28 }
指针的重要性:
- 表示一些复杂的数据结构
- 快速的传递数据
- 使函数返回一个以上的值
- 能直接访问硬件
- 能够方便出来字符串
- 是理解面向对象语言中引用的基础
总结:指针是c语言的灵魂
指针的定义
地址:内存单元的编号
从零开始的非负整数
范围:
指针:
指针的分类
- 基本类型指针
- 指针和数组
- 指针和函数
- 指针和结构体
- 多级指针
时间: 2024-11-07 07:52:11