中国高校课件下载中心 》 教学资源 》 大学文库

《计算机程序设计基础》课程授课教案(C语言)第6章 指针进阶与内存空间管理

文档信息
资源类别:文库
文档格式:PDF
文档页数:2
文件大小:182.75KB
团购合买:点击进入团购
内容简介
《计算机程序设计基础》课程授课教案(C语言)第6章 指针进阶与内存空间管理
刷新页面文档预览

《计算机程序设计基础C语言》教案授课内容第6章指针进阶与内存空间管理指针的进一步理解指针数组教学目的函数指针和要求动态内存分配main函数的命令行参数重点指针数组难点函数指针教讲授学一、指针变量的进一步理解安对于定义语句:int*p;float*q;排int*和float*是指针变量p、g的类型1个机器字长,TurboC中为2字节,VC++中为4字节,可用sizeofO检测。int和float是指针变量p、q所指向的变量的类型;指针变量p、q的值是它们一旦被赋值时所指向的变量的首地址值。指针都是依存于它所指向变量存在的。这些变量可以是普通变量、数值数组、字串、函数、结构体等等二、指针数组元素均为指针类型数据的数组称为指针数组,即数组中的每一个元素都是指针变量。指针数组的定义形式为:类型标识符变量名[常量表达式例如:char*pChar[5]注意区分:int*p[5];和 int (*p)[5];指针数组常用于处理字符串。可对长度不等的字符串排序。三、函数指针一个函数在编译时被分配一个入口地址。这个入口地址就称为该函数的指针。可以用一个指针变量指向函数,然后通过该指针变量调用此函数。常用于通用函数的算法实现,例如定义一个指向函数的指针变量的一般形式数据类型标识符(*指针变量名)(形参类型列表);使用函数指针,C的编译器需要知道的除了函数指针变量,还需要知道函数的返回类型、参数个数、参数类型。四、动态内存分配堆(heap)是指未使用的内存空间。2.内存分配函数mallocO和callocO用于建立受保护的堆内存区域。例如对于整型指针 int *t;t=(int *)malloc(10*sizeof(int);或 t=(int *)calloc(10,sizeof(int);在堆上分配了10个整数。3.函数freeO释放指定的堆空间

《计算机程序设计基础C语言》教案 授课内容 第6章 指针进阶与内存空间管理 教学目的 和要求 指针的进一步理解 指针数组 函数指针 动态内存分配 main函数的命令行参数 重点 难点 指针数组 函数指针 教 学 安 排 讲授 一、指针变量的进一步理解 对于定义语句: int *p; float *q; int*和float*是指针变量p、q的类型; 1个机器字长,Turbo C中为2字节, VC++中为4字节, 可用sizeof()检测。 int和float是指针变量p、q所指向的变量的类型; 指针变量p、q的值是它们一旦被赋值时所指向的变量的首地址值。 指针都是依存于它所指向变量存在的。 这些变量可以是普通变量、数值数组、字串、函数、结构体等等。 二、指针数组 元素均为指针类型数据的数组称为指针数组,即数组中的每一个元素都是指针 变量。 指针数组的定义形式为: 类型标识符 变量名[常量表达式] 例如:char￾*pChar[5]; 注意区分:int *p[5]; 和 int (*p)[5]; 指针数组常用于处理字符串。可对长度不等的字符串排序。 三、函数指针 一个函数在编译时被分配一个入口地址。这个入口地址就称为该函数的指针。 可以用一个指针变量指向函数,然后通过该指针变量调用此函数。 常用于通用函数的算法实现,例如 定义一个指向函数的指针变量的一般形式 数据类型标识符 (*指针变量名)(形参类型列表); 使用函数指针,C的编译器需要知道的除了函数指针变量,还需要知道函数的 返回类型、参数个数、参数类型。 四、动态内存分配 堆(heap)是指未使用的内存空间。 2.内存分配函数malloc()和calloc()用于建立受保护的堆内存区域。例如对于整 型指针 int *t; t=(int *)malloc(10*sizeof(int)); 或 t=(int *)calloc(10,sizeof(int)); 在堆上分配了10个整数。 3.函数free()释放指定的堆空间

4.malloc(的返回值的是一个通用类型指针。可以用(int*)转成整形指针,也可转化为其他类型指针。5.用malloc0的好处是可以在程序中随时开辟指定大小的堆空间,并当做数组使用。6.若内存分配失败,malloco返回null值因此,通常用if(!t)exit(1):来建立错误陷阱。五、main函数的命令行参数C语言的mainO函数可带有两个形参,形式为main (intargc, char*argv[)argc表示命令行参数的个数指针数组argv[的元素分别指向命令行各参数的首地址:argv[O]指向文件名(的首地址);argv[1]指向第一个参数(的首地址);argv[2]指向第二个参数(的首地址)如果文件名前有路径,保存在argv[0]中。新的C/C++标准都分别规定了mainO的接口只有两种:intmain(void);int main(int argc,char *argv[l);返回0表示运行成功,返回非0表示失败。本章小结理解指针的真正含义(指针的类型,指针指向的类型,指针的值)。指针数组的定义和使用方法。函数指针的含义,定义,已经函数指针的常用用法。动态内存分配函数calloc(和malloc(,已经内存回收函数free(的使用i已经相应堆的概念。i正确使用带参数的mainO函数。点名、课堂提问讨论小结、作业布置

4.malloc()的返回值的是一个通用类型指针。 可以用(int *)转成整形指针,也可转化为其他类型指针。 5.用malloc()的好处是可以在程序中随时开辟指定大小的堆空间,并当做数组 使用。 6.若内存分配失败,malloc()返回null值。 因此,通常用if(!t)exit(1);来建立错误陷阱。 五、main函数的命令行参数 C语言的main()函数可带有两个形参,形式为 main(int argc,char *argv[]) argc表示命令行参数的个数 指针数组argv[]的元素分别指向命令行各参数的首地址: argv[0]指向文件名(的首地址); argv[1]指向第一个参数(的首地址); argv[2]指向第二个参数(的首地址) 。 如果文件名前有路径,保存在argv[0]中。 新的C/C++标准都分别规定了main()的接口只有两种: int main(void); int main(int argc,char *argv[]); 返回 0 表示运行成功,返回非 0 表示失败。 本章小结 ¡ 理解指针的真正含义(指针的类型,指针指向的类型,指针的值)。 ¡ 指针数组的定义和使用方法。 ¡ 函数指针的含义,定义,已经函数指针的常用用法。 ¡ 动态内存分配函数calloc()和malloc(),已经内存回收函数free()的使用, 已经相应堆的概念。 ¡ 正确使用带参数的main()函数。 点名、课堂提问讨论 小结、作业布置

已到末页,全文结束
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档