使用例項
要使用memwatch需要完成以下3點
1、在**中加入標頭檔案memwatch.h
2、程式的**與memwatch.c一起編譯、鏈結
3、使用gcc編譯器進行編譯時要定義巨集memwatch、memwatch_stdio
#include #include #include #include #include #include "memwatch.h"
int main(int argc, char *ar**)
makefile 如下
cc=gcc
cflags=-dmemwatch -dmemwatch_stdio
obj=main.o memwatch.o
edit:$(obj)
$(cc) -o $@ $(obj)
%.o:%.c
$(cc) $(cflags) -c $< -o $@
.phony:clean
clean:
rm -rf *.o
編譯完成執行程式後,會在當前目錄下輸出乙個memwatch.log檔案,裡邊記錄的就是記憶體檢測結果。開啟如下
可以看到檢測出了記憶體上溢、重複釋放和未釋放的情況,在檔案的最後還統計了記憶體的使用情況。
嵌入式除錯技術(二) GDB除錯應用程式
嵌入式除錯技術 二 gdb除錯應用程式 小狼 一 gdb在pc機除錯本地程式 gdb helloworld 用gdb除錯程式 二 gdb在pc機除錯arm程式 taget gdbserver 192.168.1.10 2345 helloworld host arm linux gdb hellow...
linux 應用程式段錯誤除錯方法
1 分析core檔案 當應用程式出現段錯誤時,會生成core檔案。linux系統預設情況下,禁止core檔案的生成,用命令ulimit c 返回0表示禁止。需要手動開啟core檔案,如將core檔案的大小限制512k ulimit c 1000,core file size為未限制大小 ulimit...
linux應用程式設計 GDB除錯
gdb簡介 gdb是gnu發布的一款功能強大的程式除錯工具,gdb主要完成下面三個方面功能 一 gdb的使用操作 1.啟動被除錯程式。2.讓被除錯的程式在指定的位置停住。3.當程式被停住時,可以檢查程式狀態 如變數值 gdb除錯例項 1.在linux下編寫test.c程式 1 include 2 3...