• 第二周学习内容小结


    学习时间:6小时

    一·学习任务

    1.在终端输入vimtutor进入教程,学习vim的基本操作

    2.使用gcc,gdb编译.c文件

    3.学会使用Makefile,将多个文件放在一个文件夹中

    二·学习方法

      在本周实验中,学习使用了与Linux类似的mac os,在air上使用十分方便,通过学习实验楼及PDF上的书上第三章的知识对本周内容进行学习。

    三·学习过程

    1.关于vim的基本操作

        在终端中输入vimtutor进入教程。在教程中学会使用了一些基本指令,如打开一个新文件之后按下i键就可以输入文本,按esc退出某模式,然后输入:,之后输入wq就可以保存退出。之后还有一些常用的,如ls显示文件目录,在正常模式下按下x键就可以删除光标对应的文本等。

    2.使用gcc进行编译

        在编译之前,首先输入vim 文件名+后缀名,就可以创建对应文件(比如我要创建hello.c,只要输入vim hello.c),然后进入后就可以利用vim中教的方式输入代码。输入完代码后,输入gcc指令,它可以直接把.c文件变为.o文件,其实在这过程中有.i后缀名的文件,编译完后都用vim查看一下,结果如下:

    图:输入gcc指令进行编译

    图:.i文件中的内容

    图:.o文件中的内容

    图:正常编译文件hello.c的结果

    3.使用gdb进行调试

        gdb作为一款用来调试程序的程序,但是在mac os中并没有,于是在网上搜索进行了安装,依然是在终端中输入指令,安装成功后因为mac系统的保护,需要进行认证,在网上搜索了一下,证书写好后还无法认证,还在处理之中,不过一些指令还可以使用,在作业中有一些截图。

        gdb中的一些常用指令:(1)break 6(6即设置断点的行号);        (2)info break(查看断点信息)

                             (3)r(运行程序)                         (4)n(单步运行)

                 (5)p i(打印变量i的值)                  (6)c(继续运行程序)

    4.学习使用Makefile

        makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至进行更复杂的功能操作。

        在vim中编译,最后的那个“clean:”就是用来 make clean去执行rm -f *.o test这条命令,完成 clean 操作。

      在最后的作业中,运行出现了些问题,在作业中详细说明。

    5.作业

    (1)首先vim写入对应的文件,之后使用gcc编译,然后在终端中运行。

    (2)使用gdb进行调试

        在尝试了其他多组数据之后发现,无论数据怎么变换,除法的输出结果均为0.因为电脑的gdb存在一些问题,只可以运行一些指令,结果如下:

    图:进入gdb后输入l,查看代码及行数

     

        在上图中,只设置了断点并查看了断点信息,输入运行和单步运行时均出现错误,仍在学习调试中。

    (3)设置静态库和动态库

        安装PDF指导书上的知识,输入对应指令即可完成。

    图:静态库

     

    图:动态库

    (4)使用Makefile

        安装指导书上的进行vim编译,结果如下:

        但是输入make指令后,提示错误,查看之后未发现问题,还在尝试解决中。

     

    四·学习总结

        经过本周的学习,对于在mac os中通过终端完成代码的编译有了更深的了解。vim的学习让我从当初新建文件之后的不知所措,到现在可以编译多个文件组成的程序,并进行调试和静态库的创建。通过学习,对苹果自带的系统编写代码有了深入了解,终于不像以前一样让另一个系统闲置了。

  • 相关阅读:
    经典排序算法之直接选择排序
    经典排序算法之归并排序
    经典排序算法之希尔排序
    MAC自带的SVN进行升级
    磁盘随机读写与顺序读写性能对比
    事务锁与脏读、不可重复读、幻读
    处理vue页面406问题纪要
    url-pattern / 与/* 的区别
    打印 request 请求中的参数
    [转] Slf4j MDC机制
  • 原文地址:https://www.cnblogs.com/shadow135211/p/4842258.html
Copyright © 2020-2023  润新知