# 20175333 曹雅坤《信息安全系统设计基础》第三周学习总结 20175333 曹雅坤《信息安全系统设计基础》第三周学习总结
教材学习内容总结
- GCC学习
-
gcc使用命令:ESc,iso(为-E,-S,-c的缩写)按这个顺序进行命令
用vi输入代码,并编译执行。每个文件最好在单独的文件夹里,总文件夹要有学号姓名 -
项目目录结构:
src 存放.c文件
include存放.h文件(头文件)
bin 存放项目调试后可运行文件
libs 存放动态库k和静态库文件
makefile描述了整个工程的编译,自动化
-
错误命令
-
正确命令
- GDB学习
gdb的功能:
- 启动程序,设置运行环境,运行指定程序
- 断点调试
- 调整程序,纠正错误
gcc -g test.c -o test
gdb test
通过这两行代码来运行gdb调试程序
再通过gdb的命令模式对代码进行调试与修改
- MAKEFILE学习
makefile就像一个shell脚本一样,给我们带来了类如“自动化编译”,一旦写好了代码,只需要一个命令,c整个工程自动完成编译,可以极大地提高软件开发的效率
- 书写规则:
targets :prerequisites
(Tab) command
或者:
traget : prerequisites;command
(Tab) command
targets:文件名,以空格分开,可以使用通配符,一般来说目标基本上是一个文件
command:命令行,前以【Tab键】开头 - makelife的模式规则:
1.在规则的模式定义重要包含“%”,否则,就是一般的规则
2.目标中的“%”定义表示对文件名的匹配,表示任意长度的字符串
3.例如:“%.c”表示以“.c”结尾的文件名。
%.o :%.c
$(CC) -c $(CFLAGS)$(CPPFLAGS)$< -o $@
- 掌握库的生成与调用
- 静态库
运行结果;
- 动态库
运行结果: