堆和棧的一點知識
阿新 • • 發佈:2018-11-08
堆和棧
1、堆的增長方向是遞增;
2、棧的增長方向是遞減。
實驗程式碼:
printf("棧操作:\n");
int num1 = 10;
int num2 = 11;
printf("num1:%d\n", num1);
printf("num2:%d\n", num2);
printf("&num1:%d\n", &num1);
printf("&num2:%d\n", &num2);//棧操作
printf("堆操作:\n");
int *num3;
int *num4 ;
num3 = new int;
num4 = new int;
*num3 = 12;
*num4 = 13;
printf("*num3:%d\n", *num3);
printf("*num4:%d\n", *num4);
printf("num3:%d\n", num3);
printf("num4:%d\n", num4);
printf("&num3:%d\n", &num3);
printf("&num4:%d\n", &num4);
delete num3;
delete num4;
實驗的結果如下:
在結果中:
&num1、&num2、&num3、&num4四個地址是在棧中的,num3、num4兩個地址是在堆中的。