快速业务通道

神器 vim 指针相关客串

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-24

前篇回顾

  上篇介绍了linux下C编程基本环境配置以及相关工具使用选择.

  不过10个大牛9个用vim,那么咱们就来玩vim.linux下玩c就别依靠图形界面.好吧告别Ide,命令行才是c的王道.

  本篇文章感谢名为孙鹤同学的技术支持 感谢有爱的c大牛们

  本文中多处使用vim插件(孙鹤提供),这些插件大多是在http://www.vim.org/处下载.


指针客串

  毕业后就没玩过c了,都说指针是c的重点.但是指针作为一种地址变量,为什么不直接操作变量本身呢.文章末尾为大家揭晓


vim的配置文件

  ~/.vimrc    用户的默认配置文件
  ~/.vim/plugin/ 用户的默认脚本文件的存放目录
  ~/.vim/ftplugin/ 用户的默认文件类型相关脚本文件的存放目录


vim提供的编程支持

  文本信息(行号、文件名等)
  代码缩进
  语法高亮
  快速定位
  标记位置
  全文搜索
  补全
  多文件编辑
  多窗口编辑
  函数列表
  文件列表
  函数跳转
  语法错误
  字符集的编码
  二进制查看

  等等...


初试vim

  在终端以root启动 输入vim命令 显示vim首页

:r filename 读入一个文件内容,并写入到当前编辑器中

按i进入插入模式

编辑完后:w保存

编辑完后按esc退出插入模式 进入正常模式

然后输入:sh进入shell

编译运行


文本信息配置

set nu(写入配置文件.vimrc中) 显示行号.
ctrl-g(正常模式下使用命令) 显示文件信息和当前行. 拥有帝国一切,皆有可能。欢迎访问phome.net
statusline.vim(插件) 增加底部状态栏.


代码缩进配置

filetype on(写入配置文件.vimrc中) 使vim对文件类型敏感.
autocmd FileType c,cpp,h :setlocal cindent cinoptions=:0,g0,t0(写入配置文件.vimrc中) 设置c缩进风格,具体详情参见:h cinoptions-values.
autocmd FileType c,cpp,h :setlocal et sta sw=4 sts=4 tabstop=4(写入配置文件.vimrc中) 设置一次缩进的距离是4个空格.
=(正常模式或者可视模式下使用命令) 按照缩进风格排版代码.
<(可视模式下使用命令) 向左缩进一级.
>(可视模式下使用命令) 向右缩进一级.


语法高亮

filetype plugin on(写入配置文件.vimrc中) 通常安装的vim中已经加入了各种语言的语法高亮插件,我们只需要打开文件类型相关的插件就可以了.


快速定位

gd(正常模式下使用命令) 跳转到局部变量定义处.
gD(正常模式下使用命令) 跳转到全局标量定义处.
*(正常模式下使用命令) 搜索并跳到下一个光标所在的单词.
g*(正常模式下使用命令) 功能接近*,但是查找的目标不带\<和\>单词分界符号.
#(正常模式下使用命令) 搜索并跳到上一个光标所在的单词.
g#(正常模式下使用命令) 功能接近#,但是查找的目标不带\<和\>单词分界符号.


标记位置

m{a-zA-Z0-9} (正常模式下使用命令) 在当前位置制作一个标记,标记名字可以使用a-z或者A-Z之间的任意字符,例如输入ma,就是将当前位置标记为a标记.注意a-z为单文件标记,不可跨文件使用,而A-Z0-9为全局标记,可以跨文件使用.
‘{a-zA-Z0-9} (正常模式下使用命令) 跳转到本文件的标记上.
:marks [{a-zA-z0-9}] (正常模式下使用命令) 查看指定标记的内容,不写标记号则查看所有. 拥有帝国一切,皆有可能。欢迎访问phome.net
:delm {a-zA-z0-9} (正常模式下使用命令) 删除一个标记.


全文搜索

:vimgrep(正常模式下使用命令) 全文搜索,功能同grep命令,但是支持在vim进行多文件跳转定位.
使用方法:vimgrep 正则表达式 文件.文件支持通配符,例如*.c代表所有的.c文件.如果希望递归搜索,可以使用**/*,表示搜索所有的文件.
:cl 列举结果
:cc(正常模式下使用命令) 当前结果
:cn(正常模式下使用命令) 下一

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号