VIM中檢視標頭檔案和庫函式的方法

2021-05-08 02:38:34 字數 2396 閱讀 5356

vim中檢視標頭檔案,庫函式的方法:

1、最簡單的方法是安裝對應庫的man手冊,直接在終端man ***(函式)如 man printf 就會看到pringf相關的資訊,這種方法簡單而且顯示的資訊很多,前提是你的英文必須過關!這種方法不是這裡的重點。

安裝乙個最基本的文件sudo apt-get install manpages-dev

2、這種方法可以讓你更了解標頭檔案或核心原始碼的結構

(1)首先安裝乙個工具ctags:sudo apt-get install ctags

讓後我們進入/usr/include或你的核心目錄進行如下操作:ctags -r *,這會在當前目錄下遞迴的為各個子目錄生成乙個名為tags標籤檔案,這個操作在第一次執行後即可。

現在在我們執行vim -t printf我們會看到我們進入了vim的編輯介面同時也到了printf宣告的地方。或直接進入vim編輯介面輸入 :tag 《函式名或巨集等》 按tab鍵可以進行模式匹配,繼續安tab匹配下乙個。

可是這樣查到的東西可能不是你想要的那乙個,怎麼解決這個問題呢?

(2)解決上面問題需要安裝乙個工具cscope:sudo apt-get install cscope

上面幾個工具單獨用功能不是很大,可是結合起來功能就非常強大了。我這裡有乙個自己用的vim指令碼,是拷貝別人的功能不是很多,但是已經夠用了。

在使用者目錄下新建乙個.vimrc檔案將下面內容新增到檔案中:

set mouse=a

let tlist_use_right_window=1

let tlist_file_fold_auto_close=1

map :tlisttoggle

noremap :make

noremap :make clean;make

noremap :tlist

noremap :tlistsync

noremap :!./vitags.sh:cs reset

noremap :!cvs up

nnoremap @=((foldclosed(line(''.'')) < 0)       ''zc'' : ''zo'')

if has("multi_byte")

set encoding=utf-8

set fileencoding=chinese

set fileencodings=ucs-bom,utf-8,chinese

endif

set wrap

set hlsearch

filetype plugin on

colorscheme elflord

syntax on

set nocp

filetype plugin on

filetype indent on

if has("cscope")

set csprg=/usr/bin/cscope

set csto=0

set cst

set nocsverb

" add any database in current directory

if filereadable("cscope.out")

cs add cscope.out

" else add database pointed to by environment

elseif $cscope_db != ""

cs add $cscope_db

endif

set csverb

set cscopetag

endif

set nu

set ts=4

set sw=4

set ru

set hls

set is

set sm

set cin

set cino=:0g0t0(sus

set autoread                              " read open files again when changed outside vim

set incsearch                              " use incremental search

set nowrap                               " do not wrap lines

set nobackup

set nowritebackup

map :!ctags -r --c-kinds=+p --fields=+ias --extra=+q .

map :!ctags -r .

現在再試試vim -t 《函式名或巨集等》,這時如果有多個選項的話就會出現乙個列表讓你選擇你需要的那個。

vim檢視標頭檔案和庫

1 最簡單的方法是安裝對應庫的man手冊,直接在終端man 函式 如 man printf 就會看到pringf相關的資訊,這種方法簡單而且顯示的資訊很多,前提是你的英文必須過關!這種方法不是這裡的重點。安裝乙個最基本的文件sudo apt get install manpages dev 2 這種...

C 標準庫函式的標頭檔案收集

c 程式通常可以呼叫標準c 庫中的大量函式。這些函式完成一些基本的服務,如輸入和輸出等,同時也為一些經常使用的操作提供了高效的 實現 這些函式中含有大量的函式和類定義,以幫助程式設計師更好地使用標準c 庫。標準c 庫包含以下內容 or ig tjmp 和 標準c 庫的詳細訊息均在其對應的標頭檔案進行...

Lua呼叫只有標頭檔案的C 動態庫函式

前段時間公司讓我尋找乙個for c 的lua binder庫,要求c 和 lua能夠雙向呼叫 所以swig tolua排除 最後選擇了luabind的乙個fork,名叫luaponte,選擇的原因是既有luabind的廣泛使用比較可靠,又支援luajit 我們要用 的5.1語法。昨天做summary...