使用new 和 delete, 動態地調整陣列大小,通常是當前陣列滿了的時候,將陣列容量翻倍,假設用int變數capacity代表當前陣列大小, ptr是當前陣列指標;
float *tempptr = newfloat [capacity * 2
];for ( int i = 0; i < capacity; i++)
delete ptr;
ptr =tempptr;
capacity = capacity * 2;
1. 動態分配新陣列,容量為當前陣列2倍;
2. 將當前陣列元素複製到新陣列中;
3. 釋放ptr的空間,此時ptr沒有被刪除;
4. ptr指向新陣列;
5. 陣列容量變數capacity更新。
關於,array[i]與i[array]的結果是一樣的,都得到 *(array+i)
C 指向指標的指標與動態陣列
這裡以一維字元陣列開篇,include using namespace std void main char pb pc 0 for int i 0 i 3 i cout 下面來逐句解析 char pc 定義了乙個指標陣列,為pc 0 pc 1 pc 2 分別存放了三個字元陣列的首位址,這裡pc 0...
C 指標陣列與陣列指標
說實話,c語言真的很讓人蛋疼,它不像物件導向的語言,我們重心在設計程式上。而使用c語言,你不僅要考慮程式的設計,你還要考慮很多他的使用細節,不然一不小心你怎麼死的都不知道。但是,個人感覺,c語言的魅力是其他任何語言都比不了的!繼續看。陣列指標 範例 typedef int aint5 5 typed...
C 指標陣列與陣列指標
陣列指標 也稱行指標 陣列指標 a pointer to an array,即指向陣列的指標 定義 int p n 優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p 1時,p要跨過n個整型資料的長度。如要將二維陣列賦給一指標,應這樣...