数据的存储机制(续) 直接访问 间接访问 #include <stdio h> #include <stdio. h> void maino void mair int a b sum=0 int a, b, su; int*p_1,*p_2; printi("请输入a和b的值: printi("请输入a和b的值: scanf("%od, %od", &a, &b) scanf("%od, %od", &a, &b) p 1=&a; p 2=&b sum=a+b sum=*p 1+*p 2 printf sum od\n", sum) printf("sum=% n",sum) 北大青鸟 P-
数据的存储机制(续) • 直接访问 – #include <stdio.h> – void main() – { – int a,b,sum; – printf("请输入a和b的值: "); – scanf("%d,%d",&a,&b); – sum=a+b; – printf("sum=%d\n",sum); – } • 间接访问 – #include <stdio.h> – void main() – { – int a,b,sum=0; – int *p_1,*p_2; – printf("请输入a和b的值: "); – scanf("%d,%d",&a,&b); – p_1=&a;p_2=&b; – sum=*p_1+*p_2; – printf("sum=%d\n",sum); – }
指针的功能 方便一个函数向另一个函数的过渡 能通过指针的移动来改变指针所指向的 数据,不需要去移动变量或数组。 可以实现动态内存的更新。 北大青鸟 P-
指针的功能 • 方便一个函数向另一个函数的过渡。 • 能通过指针的移动来改变指针所指向的 数据,不需要去移动变量或数组。 • 可以实现动态内存的更新
指针与指针变量 什么是指针? 指针变量 变量的内存地址。 用来存放变量地址的 变量 变量值 56 1000 指针 1000 (内存地址) a→变量名b→指针变量 北大青鸟 P-
指针与指针变量 • 什么是指针? – 变量的内存地址。 • 指针变量 • 用来存放变量地址的 变量。 56 a 变量名 1000 (内存地址) 变量值 1000 b 指针 指针变量
指针声明 格式 数据类型*指针变量名; 北大青鸟 P-
指针声明 • 格式 数据类型 *指针变量名;
基类型:指针所指 向的数据类型。决 定了指针每次移动 声明注意事项 的步长。 *”表示声明的指针变量,不是代表指针 运算符。 *”前必须指定数据类型(基类型), 其主要功能是指指针所指向对象的数据 类型 北大青鸟 P-
声明注意事项 • “*”表示声明的指针变量,不是代表指针 运算符。 • “*”前必须指定数据类型(基类型), 其主要功能是指指针所指向对象的数据 类型。 基类型:指针所指 向的数据类型。决 定了指针每次移动 的步长