- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
动态内存分配函数 3.free函数 函数原型:void free(void *p); 功能:释放指针p指向的存储空间,free函数无返回值。 说明:p为最近一次调用malloc函数或calloc函数返回的指针。 4.realloc函数 函数原型:void *realloc(void *p,unsigned int size); 功能:将指针p所指向的存储空间,重新分配改变为size个字节,并将原存储空间存放的数据拷贝到新分配的存储空间。如果分配成功,函数返回一个指向新存储空间起始地址的指针,否则返回空指针。 动态内存分配函数 注意: (1)最好在同一个函数内动态分配和释放存储空间。 (2)最好在定义指针时将指针初始化为NULL,在释放指针后也将指针赋值为NULL,这样便于在需判断指针有效性时,用p==NULL判断指针是否为空指针。 (3)ANSI C标准要求动态分配存储空间需将“stdlib.h”文件用#include命令包含在程序中。 例:一维动态数组 #include stdlib.h main() { int *p = NULL, n, i, sum; printf(Please enter array size:); scanf(%d, n); p = (int *) malloc(n * sizeof (int)); if (p == NULL) { printf(No enough memory!\n); exit(0); } printf(Please enter the score:); for (i=0; in; i++) { scanf(%d, p + i); } sum = 0; for (i=0; in; i++) { sum = sum + *(p + i); } printf(aver = %d\n, sum/n); free(p); } 例:二维动态数组 #include stdlib.h main() { int *pScore = NULL, i, j, m, n, maxScore, row, col; printf(Please enter array size m,n:); scanf(%d,%d, m, n); pScore = (int *) calloc(m*n, sizeof (int)); if (p == NULL) { printf(No enough memory!\n); exit(0); } printf(Please enter the score:); for (i=0; im; i++) { for (j = 0; jn; j++) { scanf(%d, pScore [i*n+j]); } } maxScore = FindMax(pScore, 3, 4, row, col); printf(maxScore = %d, class = %d, number = %d\n, maxScore, row+1, col+1); free(pScore ); } 历年真题 真题:已有定义:double*p;,请写出完整的语句,利用malloc函数使p指向一个双精度型的动态存储单元__。【2005.9】 答案:p=(double*)malloc(sizeof(double)) * 专题之九编译预处理和动态存储管理 考纲分析 编译预处理 1、 宏定义:不带参数的宏定义;带参数的宏定义。 2、 文件包含处理。 分析:这部分主要讨论了预编译,一般会出1-2个选择题和1-2个填空题。 这部分好掌握,明确两条:1、宏定义#define后面的就直接带入,再计算。2、头文件中的ifndef/define/endif的作用是防止该头文件被重复引用。 C提供的预处理功能主要有以下三种: 1. 宏定义 2. 文件包含 3. 条件编译 分别用宏定义命令、文件包含命令、条件编译命令来实现。为了与一般C语句相区别,这些命令以符号“#”开头。 历年真题必学 真题1:下列程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。【2005.9】 main() { int r; float s; scanf
您可能关注的文档
- Windows7不能显示韩文的解决方法.doc
- Windows7保留、隐藏分区(100MB活动分区).doc
- Windows7安装CAD2006方法.doc
- windows7_下java环境变量配置方法.doc
- Windows7_x64版本_64位系统优化方法.doc
- windows7_iis安装与配置.doc
- Windows7_C盘清理.doc
- windows7(硬盘安装)图解.doc
- Windows7 下 XP Mode 下载安装设置完全图解.doc
- Windows7 蓝屏代码.doc
- 2026届高三地理一轮复习课件+城市交通运输.pptx
- 2025届高考地理一轮复习课件3南亚和印度 (1).pptx
- 4.2.1+土壤与植被+第一课时 高中地理中图中华地图版(2020)必修一.pptx
- 1.2 地球运动的地理意义(第5课时 正午太阳高度的变化) 高二地理人教版2019+选择性必修1.pptx
- 3.2+与世界深度互动 统编版道德与法治九年级下册.pptx
- 2.3河流地貌的发育 高中地理人教版(2019)选择性必修1.pptx
- 2025届高考地理一轮复习课件+备战市统测(二)工业区位因素.pptx
- 3.2.1气压带、风带对气候的影响 高中地理中图中华地图版(2020)选择性必修一.pptx
- 1.2++太阳对地球的影响(第2课时) 高一地理人教版(2019)必修第一册.pptx
- 2.2+构造地貌的形成(第一课时) 高二上学期地理人教版(2019)选择性必修一.pptx
最近下载
- --水库除险加固工程下闸蓄水验收建设管理工作报告汇.doc
- 艺考合作计划书.pptx VIP
- 2023被动式超低能耗建严寒和寒冷地区居住建筑.docx VIP
- GB/T 2484-2023固结磨具 形状类型、标记和标志.pdf
- TBT1632.3-2019 钢轨焊接 第3部分:铝热焊接.pdf VIP
- 一元一次不等式 课件.pptx VIP
- 2家政服务 合同管理规范DB44!T 2290—2021.pdf VIP
- GB51057-2015 种植塑料大棚工程技术规范.pdf VIP
- Unit 8 Collecting as a hobby 词汇 课件 沪教牛津版英语七年级上册 .pptx VIP
- 牛津版三年级上册英语全册新优质教学课件(配2024年秋改版教材).pptx
文档评论(0)