9.2.5 C函数库中的内存管理函数
前面讲述了C++ STL中的内存管理。本小节主要讲述C语言原有的内存管理函数。C语言原有的内存管理函数在C++中同样适用,这些内存函数在头文件<cstdlib>中声明。这些内存函数包括calloc()、malloc()、free()和realloc()。头文件<cstdlib>和C语言中的头文件stdlib.h基本是一致的,不同之处在于:calloc()函数、malloc()和realloc()不是通过调用new()函数尝试分配内存空间。free()函数不是通过调用delete()释放内存空间。
头文件<cstring>中包含了几个内存管理有关的函数:memchr()、memcmp()、memcpy()、memmove()和memset()。该头文件中还声明了数据类型size_t和宏NULL。除了memchr()函数之外,其他函数的功能没有发生变化。memchr()函数的声明形式为:

如果调用成功,此函数返回字符串s中第一个字符c的位置指针;如果调用失败,此函数返回NULL。