10.2指针变量的定义和引用 4、赋值:可以进行初始化,也可以使用赋值语句 1)、初始化: int a *s=&a: (2)、赋值语句 int a,S; s=&a; (3)、注意:只能用同类型变量的地址进行赋值! 如定义:int*s; float f;则s=&f;是非法的
10.2 指针变量的定义和引用 4、赋值:可以进行初始化,也可以使用赋值语句 (1)、初始化: int a, *s=&a; (2)、赋值语句 int a, *s; s=&a; (3)、注意:只能用同类型变量的地址进行赋值! 如定义:int *s; float f; 则 s=&f;是非法的
10.2指针变量的定义和引用 在分析有关指针的程序时,画图是很好的方法: 若有:inta,*s; 则 若有:inta=5,*s=&a;则 a &a
不定 10.2 指针变量的定义和引用 在分析有关指针的程序时,画图是很好的方法: 若有: int a, *s; 则 s a 若有: int a=5, *s=&a; 则 &a 不定5
10.2指针变量的定义和引用 二、指针变量的引用 1、两个运算符:&与效 &:取地址,注意与作位运算符时的不同(双目) :取内容,注意与作乘运算符时的不同(双目) 2、说明 a.&既可作用于一般变量,也可作用于指针变量 b.*只能作用于指针变量 c.定义指针变量时的*与该处的含义不同
10.2 指针变量的定义和引用 二、指针变量的引用 1、两个运算符:& 与 * &:取地址,注意与作位运算符时的不同(双目) *:取内容 ,注意与作乘运算符时的不同(双目) 2、说明 a. &既可作用于一般变量,也可作用于指针变量 b. * 只能作用于指针变量 c. 定义指针变量时的* 与该处的含义不同
10.2指针变量的定义和引用 3、指针变量可以进行的操作 (1)赋值:inta,*p1=&ah 表示空指针,即 (2)输出:pint%x,不指向任何单元, (3)增减:pl+:p2-;在头文件snh个整数) 中定义。 (4)取内容:p1=5;分a= PImm /ou,p1 (5)比较:与指针常量NULL进行比较,两指针变量 值的大小比较无意义
10.2 指针变量的定义和引用 3、指针变量可以进行的操作 (1)赋值:int a,*p1=&a,*p2; p2=p1; (2)输出:printf(“%x”,p1); (3)增减:p1++; p2--; p1+=4; (只能和一个整数) (4)取内容:*p1=5; a=5; printf(“%d”,*p1); (5)比较:与指针常量NULL进行比较,两指针变量 值的大小比较无意义。 表示空指针,即 不指向任何单元, 在头文件stdio.h 中定义
10.2指针变量的定义和引用 例10.1 #include <stdio.h> main( p a int al=11,a2=22; &a111 Ints p 1。*p2 p pI=&al; 2=&a2; p2 2 printf("%d, %d\n", *pl, *p2); p2=pI &al 22 printf(%od, %odn", "pl, *p2);
10.2 指针变量的定义和引用 例10.1 #include <stdio.h> main( ) { int a1=11, a2=22; int *p1, *p2; p1=&a1; p2=&a2; printf(“%d,%d\n”,*p1,*p2); p2=p1; printf(“%d,%d\n”,*p1,*p2); } p1 &a1 11 22 a1 p2 a2 &a2 *p1 *p2 &a1