溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言中內(nèi)存分配問題

發(fā)布時間:2020-07-21 22:22:50 來源:網(wǎng)絡 閱讀:291 作者:走走停停吧 欄目:開發(fā)技術

C語言中比較復雜的是對程序運行過程中在內(nèi)存分配方面的分析問題,接下來簡單介紹下C語言中一般是怎么分配的,內(nèi)存中分為棧,堆,

棧:棧中存放的是局部變量,出了作用域變量就會被釋放,棧是從高地址到低地址存放變量,具有先進后出的特點。

堆:恰恰與棧相反,堆是從低地址向高地址存放變量的。存放在堆里的變量是由人工申請空間的,也需要人工釋放空間。

靜態(tài)區(qū):全局變量等

內(nèi)存從高地址到底地址依次是棧區(qū),堆區(qū)和靜態(tài)區(qū),例如,下面這個例子



#include <stdio.h>

#include <stdlib.h>

int a = 0;

int main()

{

int i = 0;

int j = 0;

char *p = (char *)malloc(sizeof(char));

printf("%p", &a);

printf("\n");

printf("%p", &i);

printf("\n");

printf("%p", &j);

printf("\n");

printf("%p", &p);

printf("\n");

system("pause");

return 0;

}

結果如下:

C語言中內(nèi)存分配問題


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI