-
& 表示取地址符 * 表明這是一個指針變量查看全部
-
調(diào)試工具 gdb ,使用時 源代碼編譯用 gcc -g main.c -o main.out 命令查看全部
-
gdb命令: x/[數(shù)字]cb [內(nèi)存地址] 從改地址開始連續(xù)打印若干長度內(nèi)存數(shù)據(jù)查看全部
-
gdb命令: q 退出調(diào)試查看全部
-
gcc -g命令編譯后才能使用gdb gdb命令: start 開始單步調(diào)試 break [行號] 加斷點 l(ist) 列出代碼 n 下一條指令 p [變量名] 打印變量名的值 s 進(jìn)入函數(shù) bt 顯示函數(shù)堆棧 f [函數(shù)堆棧號] 切換函數(shù)堆棧查看全部
-
靜態(tài)變量 static關(guān)鍵字。函數(shù)調(diào)用結(jié)束后,靜態(tài)變量的值不消失。對一個C文件里的全局變量和函數(shù)加入static的申明 可以防止被其他C文件誤調(diào)用,即限定作用域只是當(dāng)前文件,其他文件中即使有同名變量和函數(shù)也不影響。查看全部
-
最先分配的棧地址大一些查看全部
-
p;指針指向的變量地址 *p;指針指向的變量值 &p;指針自己所在的地址 既然一個指針保存的是變量的地址,對32位CPU,地址有4個字節(jié),就需要4個內(nèi)存單元來存儲,所以每次++p在內(nèi)存里都是跳4格。查看全部
-
array是指針常量 指針則是指針變量查看全部
-
64位操作系統(tǒng),指針都是占用8個字節(jié)查看全部
-
0x表示十六進(jìn)制 1個16進(jìn)制的數(shù)字,就可以表示4位二進(jìn)制數(shù)字查看全部
-
a 代表的內(nèi)存地址 *a 代表的是這個內(nèi)存地址所賦的值 *a = *b 表示b地址所賦的值替換a地址所賦的值查看全部
-
使用gdb調(diào)試步驟: 1、使用帶-g選項的gcc命令編譯源文件:gcc -g main.c -o main.out 2、使用gdb工具調(diào)試:gdb ./main2.out 3、調(diào)試過程中:(gdb): l 列出當(dāng)前項目源代碼(list)→再按l或直接按回車:繼續(xù)執(zhí)行上一命令 break 12 將斷點打在第12行 start 單步調(diào)試 p a 顯示當(dāng)前a的值(print)(當(dāng)前行的命令未完全執(zhí)行) n 進(jìn)入下一行(next) s 進(jìn)入當(dāng)前函數(shù)內(nèi)部(step) bt 查看函數(shù)堆棧(在上方的函數(shù)先執(zhí)行) f 1 切換到1號棧 q 退出調(diào)試查看全部
-
指針變量 定義int *a 地址符號&a查看全部
-
二進(jìn)制,十進(jìn)制,十六進(jìn)制對比圖查看全部
舉報
0/150
提交
取消