Vim是Linux上的主要編輯軟件,Vim有三種工作模式:命令模式、插入模式、末行模式。
要掌握基本的三種模式的轉換:
插入模式轉到命令模式:按 Esc 鍵
命令模式轉到插入模式:按 i 建
命令模式轉到末行模式:按:鍵
末行模式轉到命令模式:按 Esc 鍵
調試器gdb可以在程序中設置斷點、查看變量值、一步步的地跟蹤程序的執行過程,利用調試器的這些功能可以方便的找出程序中存在的非語法錯誤。
gdb調試的對象是可執行文件,而不是程序的源代碼,如下步驟:
gdb 可執行文件名
(gdb) l //查看相對應程序的源碼
(gdb) b 6 //設置斷點,程序並沒有執行到第6行,而是第5行。
(gdb) info b //查看斷點的設置情況
(gdb) r //運行代碼至斷點處
(gdb) p n //查看斷點處的相關變量值
(gdb) n //鍵入一次n運行一條語句
(gdb) c //程序繼續運行至斷點處
(gdb) q //退出gdb
Makefile:
Makefile是用來告訴make如何編譯和連接一個程序,是make讀入的唯一配置文件,在一個Makefile中通常包含以下內容:
需要由make工具創建的目標體,可以認爲是目標文件、可執行文件。
要創建的目標體所以來的文件,即爲依賴文件。
創建每個目標體時需要運行的命令。
它的格式一般爲:
目標文件:依賴文件
命令
注意:在Makefile中的每一個命令前必須要按Tab鍵
對於一般的Makefile編寫方式在這裏就不作累述,一下的是一個改良版的Makefile:
OBJS=main.o insert.o command.o kbd.o display.o utils.o files.o search.o edit=$(objects) gcc -o edit $(objects) main.o=main.c defs.h gcc -o main.o -c main.c insert.o=insert.c defs.h buffer.h gcc -o insert.o -c insert.c command.o=command.c defs.h command.h gcc -o command.o -c command.c kbd.o=kbd.c defs.h command.h gcc -o kbd.o -c kbd.c display.o=display.c defs.h buffer.h gcc -o display.o -c display.c utils.o=utils.c defs.h gcc -o utils.o -c utils.c files.o=files.c defs.h command.h buffer.h gcc -o files.o -c files.c clean: rm edit $(OBJS)
下面這個又是個改良版的Makefile,比上面那個更爲方便:
OBJS=main.o insert.o command.o kbd.o display.o utils.o files.o \search.o CC=gcc CFLAGS=-Wall -o -g edit=$(objects) $(CC) $^ -o $@ main.o=main.c defs.h $(CC) $(FLAGS) -c $< -o $@ insert.o=insert.c defs.h buffer.h $(CC) $(FLAGS) -c $< -o $@ command.o=command.c defs.h command.h $(CC) $(FLAGS) -c $< -o $@ kbd.o=kbd.c defs.h command.h $(CC) $(FLAGS) -c $< -o $@ display.o=display.c defs.h buffer.h $(CC) $(FLAGS) -c $< -o $@ utils.o=utils.c defs.h $(CC) $(FLAGS) -c $< -o $@ files.o=files.c defs.h command.h buffer.h $(CC) $(FLAGS) -c $< -o $@ clean: rm edit $(OBJS)
$^ :所有不重複的依賴文件,並以空格分開
$< :第一個依賴文件的名稱
$@ :目標文件的完整名稱
¥