• # 2017-2018-1 20155232 《信息安全系统设计基础》第二周课堂实验


    2017-2018-1 20155232 《信息安全系统设计基础》第二周课堂实验

    实验三

    1. 用gcc -g编译vi输入的代码
    2. 在main函数中设置一个行断点
    3. 在main函数增加一个空循环,循环次数为自己学号后4位,设置一个约为学号一半的条件断点
    4. 提交调试过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

    未提交的原因:提交的完成一半的图,对gdb掌握不够熟悉。

    在课堂上做实验三时遇到了问题:

    使用

    gcc -g example.c -o example
    

    后才可以进行调试,不会再出现错误提示。

    提交截图:

    实验四

    1. 除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.a静态库?main.c如何使用mymath.a?
    2. 提交静态库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

    提交截图:

    实验五

    1. 除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.so共享库?main.c如何使用mymath.so?
    2. 提交共享库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

    实验六

    1 写出编译上面vi编辑代码的makefile,编译出来的目标文件为testmymath, 只用显式规则就可以.

    2 提交Make过程截图,要全屏,包含自己的学号信息

    注意在做实验六的时候要注意会出现

    missing separator stop
    

    的错误:

    MYOD

    1 复习c文件处理内容

    2 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能

    1. main与其他分开,制作静态库和动态库

    2. 编写Makefile

    5.提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息

    思路:
    编写了四个函数,其中三个分别是hexadecimal.c output.c ascii.c在主函数main.c中分别调用,以16进制输出,以ASCII码输出,输出txt文档内容。

    遇到的问题:
    忘记在每个函数中添加

    #include"head.h"
    
    

    以及忘记编写

    head.h
    

    文件,导致后续的静态库和动态库一直出现问题,出错显示没有那个文件或目录的提示,以及未定义的提示。定义一个文本文件5232.txt
    然后通过

    gcc *.c -g -o main
    

    进行编译,运行。

    之前在主函数中编写了一个循环由于循环编写的有问题,导致运行不出来。

    后来改写后运行成功。

    静态库:

    动态库:

    码云链接

  • 相关阅读:
    NodeJS简介
    SQL学习笔记(1)
    Linux常用命令03
    Linux常用命令02
    Linux常用命令01
    Java接口和抽象类的区别
    Optional解决空指针
    JVM的内存管理机制-转载
    mysql explain详解-转载
    rabbitmq消息处理-转载
  • 原文地址:https://www.cnblogs.com/lsqsjsj/p/7604477.html
Copyright © 2020-2023  润新知