C 如何開闢空間,在C 中如何釋放NEW開闢的空間

2021-08-16 03:09:14 字數 1486 閱讀 5916

1樓:匿名使用者

你第二行申請了5個int的空間,裡面存了東西,那麼你又增加了5個空間,那麼你需要一箇中轉的指標,用新建的中轉指標開闢10個空間,然後把原有空間中的內容存到新開闢的空間中,delete掉原來申請空間,之後在讓原來指標指向新申請空間,然後將中轉指標置null。這樣就變成你所要求的內容了

這是我該的程式

int *array;

array=new int [5];

int *array1;

array1=new int [10];

*array1=*array;

delete (array);

array=array1;

array1=null;

應該就這樣了,delete那裡有點記不特別清楚了,你自己翻書看一下怎麼用就好了,我現在已經不從事變成工作了,有點記不清楚了。

但是記得申請空間記得歸還,申請指標記得最後不用的指標一定要置為null

2樓:

可以這樣啊,借用臨時變數,說明如下:

int *array;

array = new int [5];//第一次開闢了5個空間int *temp = new int[10];

for(int i=0; i< 5; i++)temp[i] = array[i];

delete array;

array = temp;

這樣就能實現你要的效果了

在c++中如何釋放new開闢的空間

3樓:匿名使用者

如果是單個動態元素 delete a;(a為動態元素)

如果是一維動態樹組 delete a;(a為動態陣列)

如果是多維動態陣列 要釋放每一行元素(每一行的釋放與一維的類似)

c++ new開闢空間

4樓:匿名使用者

就是申請空間用的

具體用途是有些時候我開始不知道要申請多大空間,後來計算出來要這麼多回就可答以用new了

這就比如我們組織班級聚會,開始說要定位置,但是不知道有多少人蔘加,後來統計了後知道了人數就可以去申請具體數目一樣

c++中怎麼使用new開闢一段沒有型別的空間

5樓:匿名使用者

new一段char陣列, (void*)new char[size]

或者用::operate new(size)

c++ 中new 開闢的空間是結構體,怎麼寫呢

6樓:匿名使用者

和普通的new運算是一樣的,c++會按照它自己的方式開闢記憶體,這個不用擔心。

stacknode *pstack = new stacknode

7樓:販賣罪惡

stacknode *p=new stacknode;

如何將C盤的空間擴大,電腦C盤空間不足,如何把c盤空間可以擴大

用 partitionmagic v8.0h 漢化版!到天空軟體站下 這個軟體可以任意改變硬碟的分配。不過在它改變分配的時候千萬別關機或停電!否則就得重灌系統。系統檔案不可移動的,不過,好像有一個軟體能作出虛擬c盤,然後可以移動c盤的檔案的 有解決的辦法的,分割槽魔術師可以做到!你要是有3個以上的分...

xp系統c盤空間不足如何清理,XP系統C盤空間不足如何清理

怎麼才能清理c盤空間?10g太小了,滿了很正常。建議重灌系統,把c盤分割槽分的大一些,xp最少20g,win7 8至少40g 其實可以把你有空閒空間的盤的東西放好然後,比如d盤,然後刪除d盤,再用軟體把d盤的空間分給c盤,最後把剩下的空間再分d盤,把原來的資料放回去就行了。一般企業不給重灌系統的情況...

C中dll該如何宣告及呼叫,C 中如何呼叫DLL檔案?

dllimport twain 32.dll entrypoint 1 private static extern twrc dspxfer in,out twidentity origin,in twidentity dest,twdg dg,twdat dat,twmsg msg,in,out ...