Latest web development tutorials

Cライブラリ関数 - のrealloc()

C標準ライブラリ -  <stdlib.h>に含ま C標準ライブラリ- <stdlib.h>に含ま

説明

Cライブラリ関数void *型のrealloc(void *型ptrは、 size_tのサイズ)のmallocPTRポイントを割り当てられたのcallocの再調整を呼び出す前にしようとするメモリブロックのサイズ。

声明

ここで、()文realloc関数です。

void *realloc(void *ptr, size_t size)

パラメータ

  • PTR -メモリブロックの前にメモリの再割り当てメモリブロックへのポインタがのmalloc関数、のcallocまたはreallocのを呼び出すことによって、メモリが割り当てられます。NULLポインタがメモリの新しいブロックが割り当てられ、関数は、それへのポインタを返す場合。
  • サイズ-メモリブロックの新しいサイズをバイト単位で指定します。サイズは、既存のメモリブロックに0とPTRポイントである場合は、メモリのブロックは、それが解放されptrがヌルポインタを返します。

戻り値

この関数は、メモリの再割り当てのサイズへのポインタを返します。 要求が失敗した場合、それはNULLを返します。

次の例では、reallocの()関数が使用されている示しています。

#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

C標準ライブラリ -  <stdlib.h>に含ま C標準ライブラリ- <stdlib.h>に含ま