网站大量收购独家精品文档,联系QQ:2885784924

[工学]《C语言与程序设计》第十讲.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]《C语言与程序设计》第十讲

类型定义符typedef C语言允许用户自己定义类型说明符,相当于用户为数据类型取“别名”。类型定义符typedef用来完成此功能。 如整型量a,b,其说明是: int a,b; 用typedef定义整型说明符为 : typedef int INTEGER 程序就可用INTEGER代替int作整型变量的类型说明,如: INTEGER a,b; 等效于: int a,b; 用typedef定义数组、指针、结构等类型,不仅使程序书写简单而且使意义更为明确。例如: typedef char NAME[20]; 表示NAME是字符数组类型,数组长度为20。然后可用NAME 说明变量,如: NAME a1,a2,s1,s2; char a1[20],a2[20],s1[20],s2[20]; int menu(); int process(int (*fp)()); int enter(); int del(); int review();int quit(); typedef int (*array)(); void main(void) { array fp[4] ={enter, del, review , quit}; while(process(fp[menu() - 1])!=4); cout程序退出endl; } int process( int ( *fp)() ) {return( fp()); } int menu() { int i; cout1.Enter;2.Del;3.Reiew;4.Quit;endl; scanf(%d, i ); return( i ); } 形参是函数指针 类型定义关键字 说明array是int函数型指针的类型 定一个array数型的数组,初始化指向各个函数 menu返回值指示的数组元素是指向一个函数的指针 赋给形参 review int enter(){ printf(“is enter()\n); return(1);} int del(){ printf(is del()\n); return(2);} int review(){ printf(is review()\n); return(3);} int quit(){ printf(is quit()\n); return(4);} 执行该指针所指向的函数 函数指针使得程序的风格非常简练 3 本例题来自徐士良教材(2003年8月第2版)p186页,字符串与指针,请同学看程序说明是否正确,为什么? #includestdio.h main(){ char *str1=c,*str2=c; scanf(%s,str1); scanf(%s,str2); printf(str1=%s\n,str1); printf(str2=%s\n,str2); } 一个概念问题 字符串声明 输入字符串 编译正常 输入第一个字符串 回车后立即弹出对话框 指针指向常量,str1没有获得内存空间 * C语言程序设计基础 2010.9 第1讲 概述 第2讲 c程序框架 第3讲 数据类型与数组初步 第4讲 c程序设计初步(条件判别与关系运算、循环、结构变量) 第5讲 c程序设计初步(循环与数组的关系) 第6讲 教学回顾(变量、语句、函数与程序结构) 第7讲 函数一(概念、形参与实参、函数间的参数传递) 第8讲 函数二(变量值与地址、指针与数组、函数与程序设计) 第9讲 函数三(算法初步、指针与二维数组) 第10讲 指针与函数 第11讲 链表一(指针与链表) 第12讲 链表二(结构指针与链表设计) 第13讲 文件、算法初步 课程大纲 第十讲 指针与函数 本节要点--指针变量的概念 指针一览 二维数组回顾 概念 字符串数组 指针数组 指向指针的指针(二级指针) 指向数组的指针--数组指针 二维数组 二维数组的形参与实参 函数与指针 指针类型函数—函数返回值是指针 指向函数的指针--函数指针 结构指针 指针与程序设计 函数指针—程序设计风格 练习六第四题—积分函数 指针数组与switch() 一个概念问题 把两维数组看成一个矢量; 它就是指向矢量的指针 指针、数组与函数 数据指针:*p 二级指针:**p 指向数据变量,指针的值是数据变量的地址 指针概念一览 指针数组:*p[] 指向指针变量,它存储的值是指针变量的地址 指针变量的集合,它的元素是指针 数组指针:(*p)[] 指向一维数组的指针,加

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档