1-vi .c文件 .h文件

本实验的过程在test/test4中:

代码:

20199302.h

ifndef HEAD_H

define HEAD_H

int add(int,int);

int sub(int,int);

int mul(int,int);

double div(int,int);

endif

sub.c

include "20199302.h"

int sub(int a,int b)

{

return a-b;

}

add.c

include "20199302.h"

int add(int a,int b)

{

return a+b;

}

mul.c

include "20199302.h"

int mul(int a,int b)

{

return a*b;

}

div.c

include "20199302.c"

double div(int a,int b)

{

return a/b;

}

main.c

int main(void)

{

int a,b;

printf("enter two numbers:");

scanf("%d %d",&a,&b);

printf("sub:%d

",add(a,b));

printf("sub:%d

",sub(a,b));

printf("mul:%d

",mul(a,b));

printf("div:%lf

",div(a,b));

return 0;

}

编译:

出错,引用了错误的文件,应该改为.h,改正

编译成功:

执行结果中除法有问题,但是代码没有问题,所以不知道是什么原因,如下图所示:

vi-2

GCC编译流程

预处理,头文件和宏定义:gcc -E 20199302.c -o 20199302.i

编译阶段,将代码翻译成汇编语言:gcc -S 20199302.i -o 20199302.s

汇编阶段,将.s文件转成目标文件,二进制目标代码 gcc -c 20199302.s -o 20199302.o

最后一步

vi-3

用gcc -g编译vi输入的代码

在main函数中设置一个行断点

在main函数增加一个空循环,循环次数为自己学号后4位,设置一个约为学号一半的条件断点

提交调试过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

gcc -g hello.c -o main

Gdb main

b num

b 行数 if 表达式

r

q

vi-4

除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.a静态库?main.c如何使用mymath.a?

提交静态库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

静态库是一系列的目标文件(.o文件)的归档文件((lib+name).a文件);链接阶段,选择静态库,后缀名为“.a”,选择动态库,后缀名为“.so”。

静态链接库的生成:gcc -c 文件名.c ar rcsv libxxx.a xxx.o;

静态库的使用:gcc -o 文件名 文件名.c -L. -lxxx

生成mymath.a静态库

使用mymath.a

vi-5 1. 除了main.c外,其他4个模块(add.c sub.c mul.c div.c)的源代码不想给别人,如何制作一个mymath.so共享库?main.c如何使用mymath.so?

2. 提交共享库生成和调用过程截图(一定包含条件断点的),要全屏,包含自己的学号信息

vi-6

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

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

首先写makefile

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

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

main.o:main.c 20199302.h

gcc -c main.c -o main.o

add.o:add.c 20199302.h

gcc -c add.c -o add.o

sub.o:sub.c 20199302.h

gcc -c sub.c -o sub.o

mul.o:mul.c 20199302.h

gcc -c mul.c -o mul.o

div.o:div.c 20199302.h

gcc -c div.c -o div.o

clean:

rm -f *.o testmymath

云班课计算机基础知识答案,云班课上的作业相关推荐

  1. 计算机基础知识学习第一课,第一课计算机基础知识~.ppt

    第一课计算机基础知识~ 第一章 计算机基础知识(§1.1~§1.2) [教学目标]: 识记:①.计算机的概念:②.第一台计算机的相关信息: ③.计算机的特点. 理解:计算机的分代依据及发展的方向. 应 ...

  2. 计算机基础知识上实验课教案,高中信息技术上册《第4课 计算机基础知识》教案...

    高中信息技术上册<第4课 计算机基础知识>教案 第4课 计算机基础知识 设计 要素 设 计 内 容 练习 内容 分析 本节通过上机练习让学生了解计算机文化的概念,介绍信息对人类社会发展地作 ...

  3. 计算机基础知识大学分班,大学计算机基础课分层教学研究

    赵亮 [摘 要] 受地区经济发展状况差别及小学至高中阶段就读学校重视程度不同的影响,高校大一新生们的计算机水平均表现出巨大差异,大学计算机基础课的"一刀切"的传统授课方式越来越表现 ...

  4. 2018年计算机基础知识答案,最全全国计算机基础知识试题及答案考级宝典(2018)...

    最全全国计算机基础知识试题及答案考级宝典(2018)全国,计算机,基础知识,试题,答案,复习资料,学习技巧,模拟试卷 最全全国计算机基础知识试题及答案考级宝典(2018) 第一部分. 一.单项选择题 ...

  5. 国开大计算机基础知识答案,国开电大计算机基础形考作业

    国开电大计算机基础形考作业Tag内容描述: 1.计算机应用基础 /课程考核 /模块4 PowerPoint 2010 电子演示文稿系统客观题 一单项选择题 1.在PoewrPoint中,"视 ...

  6. 云班课计算机一级补考答案,云班课测试题答案

    云班课测试题答案 更多相关问题 [填空题]( ) 是系统维修人员专用的远程维修终端,一般赋予最高的操作级别和一定的软件修改权限. [多选题]不属于固涩剂治疗范围的病证有( ) [单选题]该病人突然呼吸 ...

  7. 山东计算机基础模拟题及答案,2016山东农信社考试模拟题--计算机基础知识答案(1)...

    1.[答案]A.解析:发现计算机病毒应该用杀毒软件对病毒进行处理. 2.[答案]D.解析:共享软件通常提供一定的免费试用期限或部分免费试用功能,不一定就是很专业的软件. 3.[答案]D.解析:运算速度 ...

  8. 微型计算机基础知识答案,计算机基础知识(答案已填)

    18."32位微型计算机"中的32指的是( D ) A.微机型号 B.内存容量 C.存储单位 D.机器字长 19.CRT显示器的像素光点直径有多种规格,下列直径中显示质量最好的是( ...

  9. ppt素材计算机基础知识,计算机基础知识幻灯片课计算机基础知识ppt件.ppt

    1;1.1计算机硬件系统的构成及工作原理;计算机硬件系统的构成;主机是计算机硬件系统的主要组成部分,主要包括中央处理器(CPU)和内存储器.中央处理器主要由运算单元(运算器)和控制逻辑单元(控制器)两 ...

最新文章

  1. docker 命令详解
  2. Linux文件的切分和结合
  3. 2020-10-19 Keil安装及使用
  4. mybatis与mysql调优_MySQL + mybatis的SQL优化方案
  5. 在Editplus中搭建Ruby开发环境
  6. flink的web ui出现Server Response:Unable to load requested file /jars
  7. yjv是电缆还是电线_VV是什么电缆?与YJV电缆有何区别?
  8. [转] 81条经典话语~~~当裤子失去皮带,才懂得什麽叫做依赖
  9. 解封装(四):avformat_find_stream_info探测获取封装上下文并打印
  10. 如果是自学WEB前端的话,该如何才能找到一份7K实习生工作呢?
  11. [转载] css border-collapse
  12. 国内三大常见核心期刊体系简介——CSSCI、CSCD与中文核心期
  13. OSChina 周四乱弹 —— 当你简历注水但还是找到了工作
  14. 西安非全日制计算机研究生哪所学校好,报考陕西非全日制研究生有哪些学校可以选择?...
  15. HALCON联合C#检测表面缺陷——检测缺陷原理(三)
  16. 使用NuSMV解决过河问题
  17. 在NS2(2.35版本)中添加 Ping协议
  18. 只是一部关于爱情的电影
  19. 著作权保护期起止时间是怎么计算的
  20. 编码集---解码和编码

热门文章

  1. 入门金融市场 名词解释
  2. UE4人物——导入多个动作流程笔记(从Mixamo)
  3. VGG 图像打标签工具
  4. 拉网小调(民歌介绍)
  5. Windows找不到文件‘Chrome‘。请确定文件名是否正确后,再试一次
  6. 解决Android Studio不提示控件的XML属性
  7. 删除文件夹时,报错“错误ox80070091:目录不是空的”,该如何解决?
  8. DELL服务器 ubuntu系统 全新硬盘识别不到问题解决及对硬盘做GPT分区
  9. 毕业设计_Android短信查询及加密系统_短信查询
  10. uniapp app安卓系统真机调试