zoukankan      html  css  js  c++  java
  • vim+makefile入门编辑,编译,差错实例

    vim+makefile入门编辑,编译,差错实例

    编写代码,一般在vim中编辑完后,输入:wq,在命令行下输入g++ hello.cc -o hello ,出现问题,打开vim,找到对应行修改,感觉是不是很烦很NC。其实vim自带的Quickfix列表就能帮助我们无需退出vim,即可进行编译代码,浏览错误信息。

    简单单个文件的调试,只需增添环境变量makeprg即可。

    编写一个简单的命名为hi.c的如下程序:

    1. #include<stdio.h> 
    2.  
    3. int main() 

    4. printf("hi"); 

    在vim的命令模式添加以下参数:

    1. :set makeprg=g++ hi.c -o hi 
    2. #gcc g++ 都可以,反斜杠之后记得加上空格, 
    3. #要不然执行起来连在一起,不识别 
    4. :make #执行make即可 

    注:c与c++程序效果一致

    为单个文件编写简单的makefile

    • make 命令可以通过 -f 执行使用的makefile。如果在没有使用 -f 指定的情况下,会按照下面的顺序执行。
      GNUmakefile, makefile 和 Makefile
      推荐使用 Makefile 的名称,而GNUmakefile是不推荐的,它只用于特定到GNU make的版本上。

    • vim Makefile,还是以上面的例子为例,输入如下:

    1. hi : hi.c 
    2. g++ -o hi hi.c 
    • 在vim命令行中输入:make,效果和第一类相同

    区别:一般的大型系统都是有makefile的,无需自己编辑,故一般使用第二种方法,可是第一个方法适合自己编写小程序并测试,方便快捷。

    使用Quickfix进行排错

    在vim下输入:make

    1. #若完全正确,则出现下列语句 
    2. Press ENTER or type command to continue 
    3. #若有错则出现,则出现下列语句 
    4. hi.c:1:17: error: missing terminating > character 
    5.  
    6. Press ENTER or type command to continue 

    出错的话,按下回车键回到vim,键入:cw,开始调错。

     命令  用途
    :cn[ext] 跳转到下一项(错误)
    :cp[rev] 跳转到上一项(错误)
    :cl 列出所有错误
    :cc 显示错误详细信息
    :copen 打开quickfix窗口
    :cclose 关闭quickfix窗口
    :col 到前一个旧的错误列表
    :cnew 到后一个较新的错误列表
  • 相关阅读:
    [整理III]微软等数据结构+算法面试100题[最新第61-80题]
    横空出世,席卷互联网--评微软等公司数据结构+算法面试100题
    SQL Server2008创建约束图解
    sqlserver2008中如何用右键可视化的设置外键
    SQL的主键和外键约束
    Visual Basic|VB 6.0中文版
    java 用eclipse j2ee写的servlet 程序,WEB-INF下的配置文件web.xml在哪啊?谢谢!
    SQL Server数据的导入导出
    MySQL命令行导出数据库
    VS2010数据库连接问题
  • 原文地址:https://www.cnblogs.com/forest-wow/p/7026270.html
Copyright © 2011-2022 走看看