《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt

上传人:爱问知识人 文档编号:5021870 上传时间:2020-01-29 格式:PPT 页数:31 大小:1.64MB
返回 下载 相关 举报
《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt_第1页
第1页 / 共31页
《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt_第2页
第2页 / 共31页
《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt_第3页
第3页 / 共31页
《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt_第4页
第4页 / 共31页
《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt》由会员分享,可在线阅读,更多相关《《移动通信软件编程基础—C语言》第12章指针的高级使用.ppt(31页珍藏版)》请在三一文库上搜索。

1、移动通信软件编程基础 C语言,知识回顾,12,指针的高级使用,第,章,本章目标,理解函数两种参数传递方式:传值、引用,理解指针和数组的关系,理解数组作为函数参数,理解结构体指针作为函数参数,数组的特性(回顾),二维数组可以看作一维数组的嵌套,数组存储在一块连续内存单元中,声明数组时会为该数组分配内存空间,但并不会初始化,使用数组下标访问数组元素 ,对单个数组元素进行处理,使用数组下标访问数组元素 ,对单个数组元素进行处理,指针变量指向一个数组首地址,数组的指针是数组的地址,即数组的起始地址,也就是数组第一个元素的地址,数组元素的指针是数组元素的地址,一维数组的指针和指针变量,10,11,12,

2、19,arr,0,arr,1,arr,2,arr,9,1002,1004,1018,1000,p,1000,一维数组的指针和指针变量,10,11,12,19,arr,0,arr,1,arr,2,arr,9,1002,1004,1018,1000,1000,p,一维数组的指针和指针变量,定义时初始化,通过赋值初始化,int arr10, *p = arr; 或者 int arr10, *p = ,int arr10, *p; p = ,一维数组的指针和指针变量,10,arr,0,11,arr,1,12,arr,2,13,arr,3,14,arr,4,15,arr,5,16,arr,6,1000,

3、p,1000,引用一个数组元素,下标法,如arri,地址法,通过数组名计算元素地址,找出元素的值,如*(arr + i),指针法,用指针变量指向数组元素,如*(p + i),一维数组的指针和指针变量,演 示,以三种方式输出数组中的值,一维数组的指针和指针变量,地址法,10,arr,0,11,arr,1,12,arr,2,13,arr,3,14,arr,4,19,通过数组名计算地址过程,arr,9,i,=,0,i,=,1,i,=,2,i,=,9,一维数组的指针和指针变量,指针法,10,arr,0,11,arr,1,12,arr,2,13,arr,3,14,arr,4,19,1000,p,p=ar

4、r,1000,arr,9,i,=,0,i,=,1,i,=,2,i,=,9,二维数组的指针和指针变量,二维数组的指针和指针变量,定义时初始化,通过赋值初始化,int arr34, *p = arr; 或者 int arr34, *p = ,int arr34, *p; p = ,二维数组的指针和指针变量,字符串,#include void main() char s20, *p; int i; p = s; printf(“请输入一个字符串:n“); gets(p); for(i = 0; pi != 0; i+) if(pi = m) printf(“有字符mn“); break; if(pi

5、 = 0) printf(“没有字符mn“); ,字符串,#include void main() static char s = “my name is rose“; char *p = s; int i; for(i = 0; pi != 0; i+) if (pi = m) printf(“有字符mn“); break; if(pi = 0) printf(“没有字符mn“); ,指针作为函数参数-传值调用,#include void f(int x) x = x + 10; void main() int i = 0; f(i); printf(“i = %dn “, i); ,指针作

6、为函数参数-传值调用,传值调用,复制文件,指针作为函数参数引用调用,演 示,引用调用,指针作为函数参数引用调用,#include void f(int x) x = x + 10; void main() int i = 0; f(i); printf(“i = %dn “, i); ,指针作为函数参数-引用调用,引用调用,操作快捷方式,一维数组作为参数,演 示,数字排序,二维数组作为参数,演 示,找最大值,单个结构指针变量作为函数参数,演 示,打印成绩单,结构数组指针变量作为函数参数,演 示,按成绩由高到低打印成绩单,总结,习题,1、从10个整数中找出最大值和最小值(用数组名做参数、用指针作参数) 2、输出二维数组中任一元素的值(用指针实现) 3、用函数调用实现字符串的复制 main() int a=5, *b, *c; c=语句后,表达式:*c的值是 A) 变量a的地址 B) 变量b中的值 C) 变量a中的值 D) 变量b的地址,作业,1、两道课后题 2、写一函数,求一字符串的长度。在main函数中输入字符串,输出长度,函数完成求长度,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1