C 擴充動態分配陣列的儲存空間

2021-10-07 19:08:58 字數 567 閱讀 6158

這裡直接示例**:

#include

#include

using

namespace std;

intmain

(int argc,

char

*ar**)

// 開闢一段更大的記憶體

int*pointer =

newint[10

];// 將原始記憶體的資料 拷貝到新的記憶體裡

memcpy

(pointer, p,

sizeof

(int)*

5);// 釋放原始指標p的空間

delete p;

// 將指標p指向新的記憶體

p = pointer;

// 新增新的元素到陣列中,並輸出結果

for(

int i =

5; i <

10; i++

)return0;

}

當然嘍,還有stl相關的容器和演算法可以擴充套件陣列空間,無需使用者自己這樣繁瑣的開闢記憶體,這裡只是給出自己的一點個人理解而已。

動態分配陣列

注意,刪除操作不會刪除該指標 它刪除指標所指向的記憶體!動態分配陣列 動態陣列的宣告讓我們執行程式時選擇自己的大小。動態分配陣列,我們使用新的和刪除陣列形式 通常稱為新的 和 刪除 123 4int nsize 12 int pnarray new int nsize note nsize does...

動態分配陣列C 模板

通過動態分配的方法實現了動態陣列的建立,其中包括多種運算子過載。include define size 100 using namespace std template class array 有參建構函式,引數為陣列的長度 array int n length n 有參建構函式,引數為陣列的長度和...

C語言動態分配陣列

最近在研究c語言相關的東西,遇到了一些問題,主要是關於陣列記憶體分配的問題。我們最常用的陣列分配方式就是使用 int array 來分配固定長度的陣列,但是當需要動態分配陣列長度的時候怎麼辦呢?最近在使用的時候就遇到了,然後自己搜了搜相關的使用方法。1.先介紹基本資料型別的建立方法 int arra...