- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
动态内存申请 malloc void* malloc(unsigned sz); 在内存的动态存储区(也称自由存储区,堆heap)中分配一个长度为sz字节的连续空间。 函数返回值为这块存储空间的开始地址。 申请失败时,返回值为NULL。 动态内存申请与释放 代码区 静态存储区 堆栈 内存区 自由存储区 动态内存释放 free void free(void* p); 释放由p指向的动态存储区中已分配的空间。 p必须是由malloc返回的值。 动态内存申请与释放 例 输入一个整数n,再输入n个整数,按升序排序后输出。 动态内存申请与释放 例 #define N 10 int cmp(const void* a, const void* b) { return *(int*)a - *(int*)b; } int main() { int a[N],n,i; scanf(“%d”,n); for (i=0;in;i++) scanf(“%d”,a[i]); qsort(a,n,sizeof(int),cmp); for (i=0;in;i++) printf(“%d ”,a[i]); return 0; } 动态内存申请与释放 例 #include malloc.h int cmp(const void* a, const void* b) { return *(int*)a - *(int*)b; } int main() { int* a,n,i; scanf(“%d”,n); a = (int*)malloc(n*sizeof(int)); for (i=0;in;i++) scanf(“%d”,a[i]); qsort(a,n,sizeof(int),cmp); for (i=0;in;i++) printf(“%d ”,a[i]); free(a); return 0; } 第8章 结束 返回指针值的函数 一个函数可以返回一个基本类型的值,也可以返回一个指针。 类型名* 函数名(参数表){ 函数体 } 不要返回函数内定义的一般变量的地址。 返回指针值的函数 例 有若干个学生4门课程的成绩,要求输入一个学号后,能输出该学生的所有成绩。用返回指针值的函数来实现。 返回指针值的函数 例 float* search(float (*p)[4],int i) { return *(p+i); } int main() { float score[][4]={ {60,70,80,90},{56,89,67,88}, {34,78,90,66} }; float *p; int i,k; printf(Enter the number of student:); scanf(%d,i); printf(“The score of No.%d are:\n”,i); p=search(score,i); for(k=0;k4;k++)printf(%5.2f ,*(p+k)); printf(\n); return 0; } 第8章 指 针 8.1 地址和指针的概念 8.2 指针变量 8.3 数组与指针 8.4 字符串与指针 8.5 函数指针 8.6 快速排序库函数的使用 8.7 返回指针值的函数 8.8 二分查找库函数的使用 8.9 指针数组和指向指针的指针 8.10 命令行参数 8.11 动态内存申请和释放 二分查找库函数的使用 返回指针值的函数的例子: 二分查找bsearch(头文件stdlib.h) void* bsearch(void *key, void *base, size_t num, size_t width, int (*compare )(const void *elem1, const void *elem2 ) ); 指向找到的元素,找不到时为0。 二分查找库函数的使用 例 int cmp(const void* a, const void* b) { return *(int*)a - *(int*)b; } int main() { int a[]={1,3,5,7,9},k=7,*p; p=(int*)bsearch(k,a
您可能关注的文档
最近下载
- 居间助贷代理合同协议.docx VIP
- 塑料制品 挥发性有机化合物和半挥发性有机化合物的测定 热脱附气相色谱质谱法.docx VIP
- 必威体育精装版CQI-27铸造系统评估表 第二版(2023).XLSX VIP
- (推荐!)GB 45673-2025《危险化学品企业安全生产标准化通用规范》之“5.2 安全生产责任制”审核检查单(2025A0).docx VIP
- NB∕T 32037-2017 光伏发电建设项目文件归档与档案整理规范.pdf VIP
- 个人房屋租赁合同范本(免费)必威体育精装版.pdf VIP
- 无刷伺服驱动器XVy-EV 中文说明书.pdf
- 实施指南《GB15979 - 2002一次性使用卫生用品卫生标准》实施指南.pptx VIP
- 医院培训课件:《PICC置管与护理》.pptx
- 个人收入证明模版word编辑版.doc VIP
文档评论(0)