zoukankan      html  css  js  c++  java
  • 信息安全系统设计基础第二周课堂实验

    ---恢复内容开始---

    # 信息安全系统设计基础第二周课堂实验 ## 1-vi测试 本次课上因代码编译不通过导致所有实验都未能按时完成,故在此予以补做。

    gcc -dg -o prog main.c add.c sub.c mul.c div.c 

    将光标移动到printf上按shift+k进入帮助界面

    2-gcc测试

    使用gcc ESc(c为小写)---iso分别对这5个文件进行预处理、编译、汇编后 使用gcc ~.o ~.o -o 随意名称对.0文件进行链接

    3-gdb测试

    使用gcc -g *.c -o test创建可gdb文件test,输入gdb test开始gdb调试,再输入 l(小写L)显示test文件内容。

    4静态库的测试

    ar rcs mymath.a add.o sub.o div.o mul.o

    gcc -static -o 5220 main.o ./mymath.a

    5共享库

    gcc -shared -fpic -o libmymath.so add.c div.c mul.c sub.c

    gcc -o 5220_2 main.c ./libmymaht.so

    makefile

    testmymath: main.o add.o sub.o mul.o div.o

    gcc main.o add.o sub.o mul.o div.o -o testmymath

    main.o: main.c head.h

    gcc -c main.c

    add.o: add.c head.h

    gcc -c add.c

    mul.o: mul.c head.h

    gcc -c mul.c

    div.o: div.c head.h

    gcc -c div.c

    myod

    head.h:

    #define HEAD_H
    #include<stdio.h>
    #include<stdlib.h>
    void ascii(char *name);
    void sixteen(char *name);
    #endif```
    
    ascii.c:
    
    ```#include"head.h"
    #include<stdio.h>
    void ascii(char *name)
    {
        FILE *fp;
        char ch;
        fp=fopen(name,"r");
        ch=fgetc(fp);
        printf("ascii码输出为:
    ");
        while(ch!=EOF)
        {
            if(ch=='
    ') 
                printf("
    ");
            else 
                printf("%d ",ch);
            ch=fgetc(fp);
        }
    }```
    
    sixteen.c:
    
    ```#include"head.h"
    #include<stdio.h>
    void sixteen(char *name)
    {
        FILE *fp;
        char ch;
        printf("16进制输出为:
    ");
        fp=fopen(name,"r");
        ch=fgetc(fp);
        while(ch!=EOF)
        {
            if(ch=='
    ') 
                printf("
    ");
            else
                printf("%x ",ch);
            ch=fgetc(fp);
        }
        fclose(fp);
    }```
    
    main:
    
    ```#include"head.h"
    #include<stdio.h>
    void main(){
    char name[50];
    printf("od -tx -tc ");
    scanf("%s",name);
    ascii(name);
    printf("
    ");
    sixteen(name);
    }```
    
    ![](http://images2017.cnblogs.com/blog/1072272/201710/1072272-20171001172641294-1010291964.png)
    
    j静态库
    ![](http://images2017.cnblogs.com/blog/1072272/201710/1072272-20171001172813981-1256291098.png)
    
    动态库
    ![](http://images2017.cnblogs.com/blog/1072272/201710/1072272-20171001172905231-1838550004.png)
    
    
    ## [代码托管](http://git.oschina.net/bestiisjava2017/wsq20155220_javaProgramming)
  • 相关阅读:
    【Django Admin皮肤】 Simpleui 自定义常用 持续更新中...
    【webSokect】基于django Channels的简单实现
    【webSocket】实现原理
    【webSocket】长轮询
    【前端实时时间】JS原生代码
    【数据结构的补全整理】规定在周一到周五中,赛选出8点到18点中的计划安排,空计划时刻补全空值
    JS面试经典知识(一)
    Python中 zipfile 出现乱码
    Linux shell 对数据进行归档
    Linux 函数的使用
  • 原文地址:https://www.cnblogs.com/20155220wsq/p/7616462.html
Copyright © 2011-2022 走看看