第10章 指针-ff.pptVIP

  • 2
  • 0
  • 约1.89万字
  • 约 77页
  • 2017-08-10 发布于河南
  • 举报
第10章 指针-ff

第 十 章 指 针; 第十章 指 针; 指针是C语言中最重要的组成部分。利用指针可以表示:复杂的数据结构;动态分配内存;灵活处理字符串和数组;直接处理内存地址;从函数调用中获取多个值等。;对变量值的存取实质上是通过地址进行的。; 指针: 一个变量的地址叫该变量的 “ 指针 ”。 指针变量: 用于存放其它变量的地址的变量。 指向:如 i_pointer= i ,就称i_pointer指向变量 i 目标变量: 指针变量所指向的变量。;说明: 1. 类型说明符表示指针变量所指向的变量的类型, 同类型变量的地址才能放到指向该类型变量的指 针变量中。例如 2. 不能把一个整型量或其它非地址类型的数据赋给 一个指针变量。例如;二、指针变量的引用 例 10.1 通过指针变量访问整型变量 main ( ) { int a , b ; int *p1 , *p2 ; a = 100 ; b = 10 ; p1 = a ; p2 = b ; printf(“%d, %d\n”, a , b ) ;   printf(“%d,%d\n”, *p1, *p2 ); } ;关于 与 * 运算符的说明: 1. 是取地址运算符, 如: a, b等。 定义时,* 是指针运算符,用于表示其后的标 识符是指针变量。但在程序中,*p 则表示指针变量 p 所指向的变量,即目标变量。 2. , * , + + , – – 同优先级, 按从右至左方向结合。 ;程序运行;三、 指针变量作为函数的参数 函数调用时,把实参的值传递给形参。 指针变量可以作实际参数,其作用也是将实际参数的值传递给形式参数,但此时的值代表是一个变量的地址,把地址传送给被调函数的形式参数。;例 10.3 设计一个函数,交换两个数。 swap ( int *p1 , int *p2 ) { int p ; p = *p1; *p1 = *p2 ; *p2 = p ; } main ( ) { int a, b, *pointer_1, *pointer_2; scanf(“%d,%d”,a,b); pointer_1 = a ; pointer_2 = b ; if (a b) swap(pointer_1,pointer_2); printf(“\n%d,%d\n”, a, b); }; 如果把 swap 函数改成 : swap (int *p1 , int *p2 ) { int *p ; *p = *p1 ; *p1 = *p2 ; *p2 = *p ; } ; swap(int x , int y ) { int t ; t=x; x=y; y=t ; };实例; swap (int *p1 , int *p2 ) { int *p ; p = p1 ; p1 = p2 ; p2 = p ; } main ( ) { int a , b , *pointer_1 , *pointer_2 ; scanf ( “ %d , %d ” , a , b ) ; pointer_1 = a ; pointer_2 = b ; if ( a b ) swap ( pointer_1 , pointer_2 ) ; printf ( “ \n %d , %d \n ”, a , b ) ; };例 10.4 swap ( int *pt1, int *pt2 ); exchange ( int *q1 , int *q2 , int *q3 ); main ( ) { int a

文档评论(0)

1亿VIP精品文档

相关文档