计算机二级C语言章节知识点:13.2动态存储分配

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2013年8月8日
第13章 编译预处理和动态存储分配 13.2 动态存储分配
讨论本章
  • 知识点:
  • malloc函数和free函数
  • calloc函数
calloc函数
  ANSI C标准规定calloc函数返回值的类型为void*,函数的调用形式为:calloc(n,size);要求n和size的类型都为unsigned int。
  calloc函数用来给n个同一类型的数据项分配连续的存储空间,每个数据项的长度为size个字节。若分配成功,函数返回存储空间的首地址;否则返回空。通过调用calloc函数所分配的存储单元,系统自动置初值0。例如:
  char * ps;
  ps=(char*)calloc(10,sizeof(char));
  以上函数调用语句开辟了10个连续的char类型的存储单元,由ps指向存储单元的首地址。每个存储单元可以存放一个字符。
  显然,使用calloc函数动态开辟的存储单元相当于开辟了一个一维数组。函数的第一个参数决定了一维数组的大小;第二个参数决定了数组元素的类型。函数的返回值就是数组的首  地址。
  使用calloc函数开辟的动态存储单元,同样可以用free函数释放。其调用形式与13.2.1中介绍的相同。

相关文章