) то же значение, что и указатель на старый объект, или нулевой указатель, если новый объект не может быть размещен.
пособ, которым меня учили использоватьrealloc()
:
int *a = malloc(10);
a = realloc(a, 100); // Why do we do "a = .... ?"
if(a == NULL)
//Deal with problem.....
Разве это не избыточно? Разве я не могу сделать что-то подобное? :
if(realloc(a, 100) == NULL) //Deal with the problem
То же самое для других примеров realloc, которые я нашел, например:
int *oldPtr = malloc(10);
int * newPtr = realloc(oldPtr, 100);
if(newPtr == NULL) //deal with problems
else oldPtr = newPtr;
Разве я не могу просто сделать это вместо этого? :
int *oldPtr = malloc(10);
if(realloc(oldPtr, 100) == NULL) //deal with problems
//else not necessary, oldPtr has already been reallocated and has now 100 elements