Функции библиотеки C - перераспределить ()
C стандартная библиотека - <stdlib.h>
описание
функции библиотеки Cнедействительными * Realloc (недействительными * PTR, size_t размер) размер блока памяти , чтобы попытаться перед вызовом таНосилиcallocперенастроить назначенныеPTRточки.
заявление
Здесь () функция утверждение перераспределить.
void *realloc(void *ptr, size_t size)
параметры
- PTR - указатель на перераспределять блок памяти памяти до того , как блок памяти выделяется память, вызывая таНос, calloc или перераспределить из.Если нулевой указатель присваивается новый блок памяти, и функция возвращает указатель на него.
- размер - Новый размер блока памяти в байтах.Если размер 0 и PTR указывает на существующий блок памяти, блок памяти, на которую указывает PTR он освобождается и возвращает пустой указатель.
Возвращаемое значение
Эта функция возвращает указатель на размер памяти переразмещения. Если запрос не выполняется, то она возвращает NULL.
примеров
Следующий пример демонстрирует функцию перераспределить () используется.
#include <stdio.h> #include <stdlib.h> int main() { char *str; /* 最初的内存分配 */ str = (char *) malloc(15); strcpy(str, "w3cschool"); printf("String = %s, Address = %u\n", str, str); /* 重新分配内存 */ str = (char *) realloc(str, 25); strcat(str, ".cc"); printf("String = %s, Address = %u\n", str, str); free(str); return(0); }
Давайте скомпилировать и запустить эту программу, которая приведет к следующему:
String = w3cschool, Address = 355090448 String = w3cschool.cc, Address = 355090448