6.1 指针和指针变量 例6.1指针变量的引用。 运行结果为: #include <stdio.h> a=20 void main() *pa=20 int a=20; &a=5308 int*pa;*定义整型指针变量pa*/ pa=5308 pa=&a;~取整型变量a的地址赋予pa* 1,1 printf("a=%d\n",a); printf(("*pa=%d小n",*pa);*用pa实现对a的间接访问*/ printf("&a=%dIn",&a); printf("pa=%dIn",pa); printf("%d,%dln",pa==&a,*pa==a);}
6.1 指针和指针变量 例6.1 指针变量的引用。 #include <stdio.h> void main() { int a=20; int *pa; /*定义整型指针变量pa*/ pa=&a; /*取整型变量a的地址赋予pa*/ printf("a=%d\n",a); printf("*pa=%d\n",*pa); /*用pa实现对a的间接访问*/ printf("&a=%d\n",&a); printf("pa=%d\n",pa); printf("%d,%d\n",pa==&a,*pa==a);} 运行结果为: a=20 *pa=20 &a=5308 pa=5308 1,1
6.1 指针和指针变量 6.1.4指针变量的赋值 >指针变量的赋值运算有以下几种形式: (1)指针变量的初始化 int a; int *pa=&a; 在定义pa的同时将变量a的地址作为初值。 (2)赋值语句的方法 int a; int *pa;pa=&a; 先定义pa,再将同类型变量a的地址赋给pa
6.1 指针和指针变量 (1)指针变量的初始化 int a; int *pa=&a; 在定义pa的同时将变量a的地址作为初值。 6.1.4 指针变量的赋值 ➢指针变量的赋值运算有以下几种形式: (2)赋值语句的方法 int a; int *pa; pa=&a; 先定义pa,再将同类型变量a的地址赋给pa
6.1 指针和指针变量 6.1.4指针变量的赋值 >指针变量的赋值运算有以下几种形式: (3)把一个指针变量的值赋另一个指针变量 int a,*pa=&a,*pb; pb=pa; 即把a的地址赋予pb,这时pa与pb均指向a。 (4)把数组的首地址赋予指向数组的指针变量 int a[5],*pa;pa=a; int a[5],*pa;pa=&a[o]; 数组名表示数组首地址,pa指向数组的首元素
6.1 指针和指针变量 (3)把一个指针变量的值赋另一个指针变量 int a, *pa=&a, *pb; pb=pa; 即把a的地址赋予pb,这时pa与pb均指向a。 6.1.4 指针变量的赋值 ➢指针变量的赋值运算有以下几种形式: (4)把数组的首地址赋予指向数组的指针变量 int a[5],*pa; pa=a; 或 int a[5],*pa; pa=&a[0]; 数组名表示数组首地址,pa指向数组的首元素
6.1 指针和指针变量 6.1.4指针变量的赋值 >指针变量的赋值运算有以下几种形式: (⑤)把字符串的首地址值赋予指向字符型的指针变量 char *pc;pc="C Language"; 或char*pc=“C Language"; 把存放字符串的字符数组首址赋给指针变量pc。 (6)把函数的入口地址赋予指向函数的指针变量 int (*pf)(); pf=f;*为函数名*/ 把f函数的入口地址赋给指针变量pf
6.1 指针和指针变量 (5)把字符串的首地址值赋予指向字符型的指针变量 char *pc; pc=“C Language”; 或 char *pc=“C Language”; 把存放字符串的字符数组首址赋给指针变量pc。 6.1.4 指针变量的赋值 ➢指针变量的赋值运算有以下几种形式: (6)把函数的入口地址赋予指向函数的指针变量 int (*pf)(); pf=f; /* f为函数名 */ 把f函数的入口地址赋给指针变量pf
6.1指针和指针变量 例6.2指针变量的赋值。 a #include <stdio.h> pa void main() &a 20 {inta=20,b=30; pb b int *pa,*pb; &b 30 pa=&a,pb=&b; printf("*pa=%d,*pb=%dln",*pa,*pb); pa=pb;*pa与pb均指向变量b*/ printf("*pa=%d,*pb=%d小n",*pa,*pb); 运行结果为: *pa=20,*pb=30 pa=&a,pb=pa;*pa与pb均指向变量a*/ *pa=30,*pb=30 printf('"*pa=d,*pb=%d小n",*pa,*pb)月 *pa=20,*pb=20
6.1 指针和指针变量 例6.2 指针变量的赋值。 #include <stdio.h> void main() {int a=20,b=30; int *pa,*pb; pa=&a,pb=&b; printf("*pa=%d,*pb=%d\n",*pa,*pb); pa=pb; /*pa与pb均指向变量b*/ printf("*pa=%d,*pb=%d\n",*pa,*pb); pa=&a,pb=pa; /*pa与pb均指向变量a*/ printf("*pa= d,*pb=%d\n",*pa,*pb); } 运行结果为: *pa=20,*pb=30 *pa=30,*pb=30 *pa=20,*pb=20 pa pb a b 20 30 &a &b