標籤:大小 函數 動態 如何 部分 out 存在 OLE space
C++ 動態記憶體
瞭解動態記憶體在 C++ 中是如何工作的是成為一名合格的 C++ 程式員必不可少的。C++ 程式中的記憶體分為兩個部分:
棧:在函數內部聲明的所有變數都將佔用棧記憶體。
堆:這是程式中未使用的記憶體,在程式運行時可用於動態分配記憶體。
很多時候,您無法提前預知需要多少記憶體來儲存某個定義變數中的特定資訊,所需記憶體的大小需要在運行時才能確定。
在 C++ 中,您可以使用特殊的運算子為給定類型的變數在運行時分配堆內的記憶體,這會返回所分配的空間地址。這種運算子即 new 運算子。
如果您不再需要動態分配的記憶體空間,可以使用 delete 運算子,刪除之前由 new 運算子分配的記憶體。
1 #include <iostream> 2 3 /* run this program using the console pauser or add your own getch, system("pause") or input loop */ 4 using namespace std; 5 int main(int argc, char** argv) { 6 int a[2][3]={{1,2,3},{4,5,6}}; 7 int b[3][2],i,j; 8 cout <<"array a:"<<endl; 9 for(i=0;i<=1;i++)10 {11 for(j=0;j<=2;j++)12 {13 cout <<a[i][j]<<" ";14 b[j][i]=a[i][j];15 }16 cout <<endl;17 }18 cout <<"array b:" <<endl;19 for(i=0;i<=2;i++)20 {21 for(j=0;j<=1;j++)22 cout <<b[i][j]<<" ";23 cout <<endl;24 }25 return 0;26 }
C++ 動態記憶體