如果一个字符串使用堆分配存储,并且字符串的内容发生了改变,长度也增加,那么通常会使用哪个函数重新分配内存?

答案解析

核心考点说明:本题考察堆内存管理的相关函数,特别是当动态分配的字符串需要扩展空间时所使用的函数。 解题思路分析:malloc用于初始分配内存,free用于释放内存,strcpy用于复制字符串,realloc用于重新分配内存,可以扩展或缩小已分配的内存块。 选项分析: A. malloc():错误。malloc()用于初始分配内存,而不是重新分配已存在的内存块。 B. free():错误。free()用于释放已分配的内存,不涉及重新分配。 C. realloc():正确。realloc()函数可以改变已分配的内存块大小,通常用于扩展字符串的存储空间。 D. strcpy():错误。strcpy()是字符串复制函数,不涉及内存分配。
正确答案:C
随机推荐
开始刷题