成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C程序在內存中的組織方式

存儲 存儲軟件 前端
學習任何東西,都不能了解就好,不能一知半解,畢竟大二全不如小而精,人才都是精通某一領域,在某一領域上作出貢獻,更不能沒信心,一有難題解決不了,就失去信心,從而放棄,那是絕不可取的,如果這樣那么一輩子也做不了什么事。

對我本人來說,學習任何一種高級語言,總想知道高級語言是如何被編譯并載入內存的,一個程序的運行,在計算機內存中是怎樣組織的等等問題,總想打破砂鍋問到底,有好多疑問,因此我就學習了匯編語言,匯編語言確實讓你能了解很多底層的東西,它可以直接跟寄存器接觸,內存單元接觸,自己創建一個棧空間,也可以自己編寫安裝自己需要的中斷例程,讓中斷向量表相應的入口地址指向自己編寫安裝的中斷例程,讓你了解什么是端口,怎樣通過匯編指令對這些端口進行讀寫,讓你了解鍵盤即鼠標的工作原理,自己編寫鍵盤程序等等,確實很有意思,但是匯編有優點,缺點也不少,這里不多說,畢竟主要講的是C語言。

[[220437]]

學習任何東西,都不能了解就好,不能一知半解,畢竟大二全不如小而精,人才都是精通某一領域,在某一領域上作出貢獻,更不能沒信心,一有難題解決不了,就失去信心,從而放棄,那是絕不可取的,如果這樣那么一輩子也做不了什么事。算了,侃這么多跟標題無關的事,請大家原諒,下面正式介紹一下C語言在內存中的組織方式,其實沒有過多要講,但是還是介紹一下吧!

一個可以執行的C程序,一般說來有四個區域組成,哪四個呢?你猜?當然不可能要你猜,猜是猜不著的,那就說出來吧:①、代碼段,程序運行時執行的機器指令,何為機器指令,也就是一連串的二進制數,電腦認不得高級語言,必須被編譯等階段轉換成二進制機器指令才能被機器所知曉,如if(a>b)…,它也會被編譯成機器指令(二進制代碼),具體是什么樣的機器指令,說實話我也不太清楚。②、靜態數據區,包含程序運行周期中一直存在的數據,比如全局變量和靜態變量,什么字符串常量啊,等等。③、堆區:程序運行時動態分配的存儲空間,一般由程序員分配和釋放,比如用malloc、calloc等。堆的分配方式類似于鏈表(以后會說到),但是它跟數據結構中的堆不是一回事,完了,差點又跑偏了,不說了。④、當然就是堆棧中的棧了,一般由系統自動分配,其包含函數的調用信息,存放函數的參數值,還有就是局部變量的值,操作方式跟數據結構中的棧很類似。

舉個類子:

int a; ①

char b; ②

int main(){

int b=10; ③

static int n=2; ④

char c[]={'a','b'}; ⑤

char *p="i love you"; ⑥

int *p=(int *)malloc(sizeof(int)); ⑦

}

上面一段程序①跟②,因為是全局變量,很容易想到它們在靜態數據區。③處的數據因為是局部的,所以在棧區,④嘛,因為有static修飾符修飾,靜態局部變量故在靜態數據區,⑤不要說,也是在棧區,局部字符數組,也是局部變量。⑥有所區別,指針變量p毋庸置疑在棧區,但是后面的i love you是常量字符串,卻在靜態數據區。指針變量p指向字符串常量。⑦不多說,在堆區。

以上就是關于C程序在內存中組織方式的簡要介紹。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2010-01-25 14:56:08

C++程序

2018-08-24 10:16:23

內存浮點數存儲

2022-08-06 16:33:01

C語言數組內存

2010-05-27 10:05:08

EhcacheJava云計算

2010-01-25 18:15:52

2019-01-07 10:24:41

2024-01-18 08:38:34

.NET數組內存管理

2020-11-16 09:28:41

函數內存

2020-09-18 09:16:37

Redis緩存內存

2020-03-17 17:49:58

C語言編程語言

2020-03-18 12:23:49

C語言編程語言

2011-06-16 09:28:02

C++內存泄漏

2023-11-17 11:40:51

C++內存

2010-02-04 15:41:10

C++內存管理

2010-02-03 14:10:28

C++內存邏輯區域

2019-09-29 00:25:11

CC++內存泄漏

2024-01-09 09:23:12

指針C++

2011-08-29 10:35:53

反射方式C#

2024-04-01 11:30:57

C#拷貝

2009-06-18 11:48:07

Struts2POI生成文件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区三区日韩精品 | 国产综合av | 亚洲精品一区二区三区中文字幕 | 欧美一级在线观看 | 国产精品中文字幕在线播放 | 久久精品免费观看 | 亚洲a视| 欧美a级成人淫片免费看 | 一区二区不卡 | 精品一区二区视频 | 99精品国产一区二区三区 | 一级毛片色一级 | 麻豆久久久久久久 | 成年人黄色免费视频 | 天天操 夜夜操 | 日韩成人在线免费视频 | 操人网 | 性视频网 | 国产精品久久久久无码av | 亚洲狠狠 | 羞羞视频网站免费观看 | 国产精品福利视频 | 久久国产高清视频 | 色综合久久88色综合天天 | 精品在线 | 一区在线播放 | 色婷婷国产精品综合在线观看 | 国产激情福利 | 国产一区二区三区四区在线观看 | 国产精品自拍一区 | 9久9久9久女女女九九九一九 | 久久久久亚洲精品 | 久久久一区二区三区 | av网站观看 | 午夜欧美 | 国产成人精品视频 | 欧美激情 一区 | 亚洲一区二区av在线 | 国产成人99久久亚洲综合精品 | 久久天堂网 | 五月婷婷视频 |