1、最简单的方法是安装对应库的man手册,直接在终端man xxx(函数)如 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 <函数名或宏等>,这时如果有多个选项的话就会出现一个列表让你选择你需要的那个。
一个好用的工具可以让你的工作效率大大提高,这里只是介绍了一点点,希望大家补充,纠正错误。
转自:http://www.eefocus.com/ayayayaya/blog/09-07/173780_e863b.html
分享到:
相关推荐
在这个标题为“c89标准头文件”的压缩包中,可能包含了一些在C89标准中定义的关键头文件,这些头文件是C程序开发中常用的,可以用于创建Vim编辑器的tags文件,以便于代码导航和跳转。 Vim是一款强大的文本编辑器,...
标题中的“只使用APUE的libapue.a库文件和apue.h头文件的例程”指的是使用Andrew Tannenbaum的《Advanced Programming in the UNIX Environment》(APUE)一书中的库函数和头文件来编写C程序。APUE是学习UNIX系统...
Linux系统中,可以通过man命令查询系统中安装的库函数的使用方法和详细说明。 8. 进程介绍 进程是系统进行资源分配和调度的一个独立单位。Linux提供了一系列系统调用和库函数来创建、管理进程。 9. 文件操作 文件...
1. **VIM编辑器**:VIM是Linux系统中常用的文本编辑器,具有命令模式、插入模式和底行模式。用户可以通过`vim`命令进入编辑器,使用`i/a/o`进入插入模式,`ESC`键返回命令模式,使用`:wq`保存并退出。VIM的配置文件...
通过`gcc -g hello.c -o hello`编译时添加`-g`选项,可以在GDB中查看和调试源代码。GDB提供断点、单步执行、查看变量值等功能,是学习和解决问题的强大工具。 此外,学习如何阅读和理解Linux错误信息也是提高效率的...
3. **IDEs介绍**:在Windows环境下,常用的IDE有Microsoft Visual C++和Dev-Cpp,而在UNIX系统中,常见的是Vim、emacs和Eclipse。这些工具提供了一体化的开发环境,便于编写和调试程序。 4. **预处理命令**:`#...
2. **库文件和头文件**:Turbo C附带的标准C库和Borland特有的扩展库,如 graphics.h 和 conio.h,这些库函数在其他现代C编译器中可能不支持,但对初学者来说十分友好,易于上手。 3. **示例代码和教程**:压缩包...
如果C代码中使用了特定的库函数,如数学库`math.h`,需要在编译时链接这些库。例如,使用`-lm`选项链接数学库:`gcc -o program filename.c -lm`。 4. **错误处理**: 编译过程中,GCC会输出任何语法或链接错误。...
2. **文件编辑器Vim**:在Linux中,Vim(Vi Improved)是广泛使用的文本编辑器,特别适合于编程。Vim有命令模式和插入模式两种工作模式。在命令模式下,可以执行如移动光标、删除文本、保存文件等操作;按下`i`键...
`.MQTTAsync_publish.c.swp`是Vim编辑器的临时文件,通常在编辑过程中创建,不直接参与程序的运行,可以忽略。 异步操作在MQTT中的重要性在于,它可以提高应用程序的响应速度和效率。当一个应用订阅或发布消息时,...
5. **头文件和命名空间**:在C语言中,头文件用于包含函数声明和类型定义。`#include`指令用于引入头文件。C语言没有真正的命名空间,但通过文件包含和全局变量的作用域管理来避免命名冲突。 6. **错误处理和调试**...
熟悉syscalls.h头文件中的系统调用,如open、read、write等,可以深入理解操作系统的工作机制。 文件系统是Linux中另一个关键部分,包括EXT2、EXT3、EXT4以及现在流行的Btrfs和XFS等。了解它们的工作原理、挂载、...
7. **头文件和预处理**:在C语言中,头文件包含库函数声明和宏定义。预处理器(#include,#define等)在编译前处理源代码,熟悉这些机制可以避免链接错误。 8. **文件操作**:Linux系统提供了丰富的文件操作API,如...
如果程序中使用了库函数,链接器会将相应的动态或静态库加入到可执行文件中。 5. **运行**:通过`./a.out`(默认可执行文件名)或者指定的文件名来运行程序。 在Linux下,C语言与系统调用紧密相连。例如,`stdio.h`...
Linux提供了丰富的头文件和库函数,使得C程序可以方便地与操作系统交互。例如,`<stdio.h>`用于输入输出,`<unistd.h>`包含系统调用,`<sys/socket.h>`用于网络编程等。通过#include指令,我们可以引入这些头文件来...
5. **头文件和预处理**:C语言中的头文件如`<stdio.h>`、`<stdlib.h>`包含了函数声明和宏定义。`#include`指令用于引入头文件。预处理器指令如`#define`、`#ifdef`等在编译前处理代码。 6. **标准输入/输出**:在...
此外,还需要掌握预处理器宏、头文件包含、标准库函数的使用。 4. **编译和链接**:C程序通常通过`gcc`编译器来编译和链接。使用`gcc`命令,可以指定源代码文件、编译选项和链接库。例如,`gcc -o program program....