-
gcc main.c -o main.out //直接生成的文件不可調試 gcc -g main.c -o main.out //加-g選項后生成的main.out就支持調試功能了,并且要使gdb能夠找到源代碼才可調試(兩個條件缺一不可) gdb調試: gdb ./main.out l //列出當前項目的源代碼 break 行號 //打斷點 start //啟動調試 p 變量 //查看變量在內存中的情況 n //執行下一條語句 s //進入函數內部 bt //查看函數堆棧(當前運行的函數,在棧頂) f 棧號 //切換棧 q //退出調試查看全部
-
A查看全部
-
int (*quadrate)(int a) 函數指針指代碼段查看全部
-
在代碼段,按先后加載順序,先進的小,后進的大,相應代碼段大小為它們的差值 global在數據段,使用同一地址 gcc 優化: 同一類型變量會放到一起 32bit指針4個字節*8bit,64位=8個字節*8查看全部
-
記錄在棧內存中 調用函數和其運行到第幾行 有哪些變量,變量的值 棧從上往下,從大的地址往小的放入查看全部
-
CPU用地址總線尋址,有多少地址總線,就有多少種狀態,就能尋找和使用多大的內存 32bit CPU: 2^32 bit== 4GB 64bit CPU: 2^64 bit 64bit 中 前12個16進制位表示程序可使用的內存< 0xffffffffffff 其它的進制位直接給操作系統> 0xffffffffffff 程序使用的內存分為(低到高) 代碼段---加載代碼指令 數據段---全局變量 或 常量 const 數據和今代碼段一般規劃好了的 堆 動態可分配內存 棧 內核查看全部
-
gcc -g 生成可以使用gdb調試的目標代碼 gdb 內命令 l 列出相關源代碼,l繼續 b(reak) 斷點(當前行) start 單步調試 n 下一執行代碼 p 打印變量 s 進入函數 bt 顯示當前函數堆棧 f 切換堆棧查看全部
-
內存分配圖查看全部
-
const和全局在數據段。查看全部
-
64位系統可以管理2^64的內存。查看全部
-
32 位的操作系統,32的CPU查看全部
-
32個地址總線。查看全部
-
兩個地址總線。查看全部
-
一個地址總線。查看全部
-
練練手查看全部
舉報
0/150
提交
取消