選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C stdlib realloc() 函式

❮ C stdlib 庫


示例

增大已分配的記憶體

// Allocate memory for a number of items
int numItems = 10;
int *myArray = malloc(numItems * sizeof(int));

// Write into the memory
for(int i = 0; i < numItems; i++) {
  myArray[i] = i + 1;
}

// Reallocate the memory
numItems = 20;
myArray = realloc(myArray, numItems * sizeof(int));

// Display the contents of the memory
for(int i = 0; i < numItems; i++) {
  printf("%d ", myArray[i]);
}

// Free the memory
free(myArray);
myArray = NULL;
自己動手試一試 »

定義和用法

realloc() 函式會更改記憶體塊的大小並返回指向該記憶體塊的指標。如果當前位置沒有足夠的記憶體,則記憶體塊將被移動到另一個位置並返回不同的指標。新分配記憶體中的值是不可預測的。

realloc() 函式定義在 <stdlib.h> 標頭檔案中。

要了解更多關於記憶體分配的資訊,請參閱我們的 C 記憶體管理教程


語法

realloc(void * ptr, size_t size);

size_t 資料型別是一個非負整數。

引數值

引數 描述
ptr 指定一個要重新分配的記憶體塊。
大小 指定記憶體塊的新大小(以位元組為單位)。

技術詳情

返回 一個指向記憶體塊的 void * 指標。

❮ C stdlib 庫

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援