20155233刘高乐 第二周课堂实践以及MyOD
1. 除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.so共享库?main.c如何使用mymath.so?
2. 提交共享库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息
课下把代码推送到代码托管平台**
答案:
1.在命令行输入gcc -shared -fpic -o libv20155233.so 20155233sub.c 20155233add.c 20155233mul.c 20155233div.c
2.输入gcc -o libv20155233 20155233main.c ./libv20155233.so
3.完成后就可以运行./libv20155233了
4.具体尝试如下图:

1. 用gcc -g编译vi输入的代码
2. 在main函数中设置一个行断点
3. 在main函数增加一个空循环,循环次数为自己学号后4位,设置一个约为学号一半的条件断点
3. 提交调试过程截图(一定包含条件断点的),要全屏,包含自己的学号信息
课下把代码推送到代码托管平台**
答案:
1.首先,输入gcc 20155233main.c 20155233add.c 20155233sub.c 20155233div.c 20155233mul.c -g -o text
2.其次,输入cgdb text进入调试界面
3.调试程序如下:

第二周测试6-Makefile
1 写出编译上面vi编辑代码的makefile,编译出来的目标文件为testmymath, 只用显式规则就可以.
2 提交Make过程截图,要全屏,包含自己的学号信息
课下把Makefile推送到代码托管平台**
答案:
- 1.命令行输入
vim Makefile,编辑以下内容(注意Tab的使用):
- 2.保存退出后命令行输入
make,之后输入./testmymath运行,如下图:
1 复习c文件处理内容
2 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能
3. main与其他分开,制作静态库和动态库
4. 编写Makefile
5 提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息
6 在博客园发表一篇博客,重点写遇到的问题和解决过程
答案:
- 1.代码实现:
#include<stdio.h>
void main(){
char filename[50];
printf("please input file's name;\n");
scanf("%s",filename);
ascii(filename);
change(filename);
}
void ascii(char *filename)
{FILE *fp;
char ch;
fp=fopen(filename,"r");
ch=fgetc(fp);
printf("ascii码输出为:\n");
while(ch!=EOF)
{if(ch=='\n') printf("\n");
else printf("%4d",ch);
ch=fgetc(fp);
}
}
void change(char *filename)
{
FILE *fp;
char ch;
printf("16进制输出为:\n");
fp=fopen(filename,"r");
ch=fgetc(fp);
while(ch!=EOF)
{
if(ch=='\n') printf("\n");
else printf("%4x",ch);
ch=fgetc(fp);
}
fclose(fp);
}
截图展示

2.实现方法:ascii值输出是将%c输出转换为%d输出,十六进制输出是将%c输出转换为%x输出。
3.静态库制作如下图:

4.动态库制作如下图:

5.makefile文件制作如下图:
(1)首先,输入vim Makefile,编辑以下内容:

(2)其次,输入以下命令执行文件:

20155233刘高乐 第二周课堂实践以及MyOD的更多相关文章
- # 第二周课堂实践以及MyOD
第二周课堂实践以及MyOD 之前使用的虚拟机出现问题被我删掉了,开始学着使用Mac系统自带的终端.在课堂上出现了问题,询问王雄老师也没有解决,课下先使用了实验楼环境进行实验,后来又在Mac重新进行了尝 ...
- # 20155337 2017-2018-1 《信息安全系统设计基础》第二周课堂实践+myod
20155337 2017-2018-1 <信息安全系统设计基础>第二周课堂实践+myod 因为在课上已经提交了四个实验,还欠缺最后一个实验,反省一下自己还是操作不熟练,平时在课下应该多多 ...
- 20155306 2017-2018-1《信息安全系统设计》第二周课堂测试以及myod的实现
20155306 2017-2018-1<信息安全系统设计>第二周课堂测试以及myod的实现 第二周课堂测验: (注:前两项在课堂已提交,在此不做详解) 第一项: 每个.c一个文件,每个. ...
- 20155233 刘高乐 Exp9 Web安全基础
WebGoat 输入java -jar webgoat-container-7.1-exec.jar 在浏览器输入localhost:8080/WebGoat,进入WebGoat开始实验 Cross- ...
- 20145209刘一阳《JAVA程序设计》第二周课堂测试
第二周课堂测试 1.if关键字后面的小括号内,表达式的值可以为10.(B) A .true B .false 2.表达式0xaa | 0x55的值为(C) A .FF B .0 C .255 D .1 ...
- 20155320信息安全系统设计第二周课堂考试总结及myod的实现
20155320 信息安全系统设计第二周课堂考试总结及myod的实现 第二周测试一二已在课上提交 第二周测试3-gdb测试 用gcc -g编译vi输入的代码 在main函数中设置一个行断点 在main ...
- 20172319 2018.10.19《Java程序设计教程》第7周课堂实践(补写博客)
20172319 2018.10.19 <Java程序设计教程>第7周课堂实践 课程:<程序设计与数据结构> 班级:1723 学生:唐才铭 学号:20172319 指导老师:王 ...
- 20155326 第12周课堂实践总结(二)String类和Arrays类的学习
20155326 第12周课堂实践总结(二)String类和Arrays类的学习 实践二 Arrays和String单元测试 实践题目 在IDEA中以TDD的方式对String类和Arrays类进行学 ...
- 《Java程序设计》第15周课堂实践总结
<Java程序设计>第15周课堂实践总结 实践一 教材代码检查-p242 要求 在IDEA中或命令行中运行P242 StackTraceDemo2.java 代码运行结果和教材一致吗?为什 ...
随机推荐
- Python 常用文件
获取当前文件的路径: from os import path d = path.dirname(__file__) #返回当前文件所在的目录 # __file__ 为当前文件, 若果在ide中运行此行 ...
- jquery.form.js(ajax表单提交)
Form插件地址: 官方网站:http://malsup.com/jQuery/form/ 翻译地址:http://www.aqee.net/docs/jquery.form.plugin/jquer ...
- 041队列queue(重要,多线程使用)
内容:队列类型.方法.使用 ###############queue定义了3种信息列队模式类Queue([maxsize]):FIFO列队模式LifoQueue([maxsize]):LIFO列队模式 ...
- JavaScript --- Map集合结构详解
Map 对象保存键值对.任何值(对象或者原始值) 都可以作为一个键或一个值. 语法 new Map([iterable]) 参数 iterable Iterable 可以是一个数组或者其他 itera ...
- JAVAWEB之文件的上传下载
文件上传下载 文件上传: 本篇文章使用的文件上传的例子使用的都是原生技术,servelt+jdbc+fileupload插件,这也是笔者的习惯,当接触到某些从未接触过的东西时,总是喜欢用最原始的东西将 ...
- WEB安全 ACCESS 注入、盲注脚本
http://www.xxx.cn/cp.asp?classid=3http://www.xxx.cn/cp.asp?classid=3 and //有拦截关键字http://www.xxx.cn/c ...
- robotframwork接口测试(四)—其他库的安装
怎么知道自己的RF已经有哪些库了,可以看python安装目录下Python27\Lib\site-packages这个文件夹,有的话就可以直接引入了. 没有的话,就安装了. 1. 命令安装:这种最方便 ...
- Dubbo实践(二)架构
架构 节点角色说明 节点 角色说明 Provider 暴露服务的服务提供方 Consumer 调用远程服务的服务消费方 Registry 服务注册与发现的注册中心 Monitor 统计服务的调用次数和 ...
- 阅读 CloudDPI:Cloud+DPI+Reversible Sketch
CloudDPI: Cloud-Based Privacy-Preserving Deep Packet Inspection via Reversible Sketch 与sketch的结合点:将修 ...
- CC2640R2F&TI-RTOS 拿到 TI CC2640R2F 开发板 第三件事就是使用 TI-RTOS 创建 一个任务 和 使用 信号量 超时来闪烁 LED灯
/* * data_process.c * * Created on: 2018年7月5日 * Author: admin */ #include <ti/sysbios/knl/Task.h& ...