C 知識點 記憶體占用問題

2021-07-15 21:33:01 字數 587 閱讀 4686

有一次去面試,談的挺好的,被人問了乙個問題,瞬間暴露自己基礎能力弱的弱點了,這裡自己記錄下,以後慢慢長進。

問題

char test1=; char test2=; char test3[20]=;
這三個語句使用 sizeof ,輸出的結果是什麼,而我回答的,全部成了指標的長度了,悲劇啊

qdebug()<

char test1= size is: 4

char test2= size is: 4

char test3[20]= size is: 20

qdebug()<

char test1= size is: 4

char test2= size is: 4

char test3[20]= size is: 4

注意,這裡第乙個4 是字元陣列的長度

後面兩個4 是顯示了指標占用記憶體長度

C 程式設計知識點 記憶體分割槽

c 程式在執行時,將記憶體大方向劃分為4個區域 記憶體四區的意義 不同區域存放的資料,賦予不同的生命週期,給我們更大的靈活程式設計。1.存放 cpu 執行的機器指令 2.區是共享的,共享的目的是對於頻繁被執行的程式,只需要在記憶體中有乙份 即可 3.區是唯讀的,使其唯讀的原因是防止程式意外地修改了它...

C 知識點總結 C 記憶體分割槽

棧區 由系統自動分配和釋放 堆區 由程式設計師主動申請記憶體,並由程式設計師自己釋放 全域性靜態區 1 全域性初始化資料區 靜態資料區 data segment 只初始化一次,資料段通常是指用來存放程式中已初始化的全域性變數的一塊記憶體區域。資料段屬於靜態記憶體分配。data段中的靜態資料區存放的是...

C 記憶體占用問題

關於學習 完c語言中 變數的記憶體管理和結構 體變數所佔記憶體大小的問題後 到第二階段學 習c 面向對 象的程式設計 大家肯定會有 這樣的疑問 在c 中乙個類對 象究竟占用多少記憶體?最近關於此 問題進行了相關資 料整理,感覺 這裡解釋的 應該很清楚,感 興趣的同學 請網下看 很多c 書籍中都介紹過...