处理动态链表所需函数二:calloc与free

来源:互联网 发布:吴飞 心知天气 编辑:程序博客网 时间:2024/04/29 06:16
/*分配内存空间函数:calloc();(类型说明符 *)calloc(n, size);功能:在内存动态存储区中分配n块长度为size字节的连续区域。函数的返回值为该区域的首地址。calloc函数与malloc函数的区别:仅在于calloc函数一次可以分配n块区域。ps = (struct stu *)calloc(2, sizeof(struct stu));按stu的长度分配2块连续区域,强制转换为stu类型,并把其首地址赋予指针变量ps.*//*释放内存空间函数:freefree(p);释放p所指向的一块内存空间,p是一个任意类型的指针变量,它指向被释放区域的首地址,被释放区域应该是由malloc或calloc函数所分配的区域。*///实现内存空间的动态分配#include<stdio.h>#include<stdlib.h>void main(){struct stu{int num;char *name;//字符型数组char sex;double score;}*ps;ps = (struct stu *)malloc(sizeof(struct stu));ps->num = 1001;ps->name = "zhang";ps->sex = 'M';ps->score = 95.4;printf("No. = %d\n Name = %s\n Sex = %c\n Score = %.2lf\n",ps->num, ps->name, ps->sex, ps->score);free(ps);//释放ps指向的内存空间。}

原创粉丝点击