规划
算法 1h
linux学习 2h
笔试题 1h,秋招岗位情况
英语 1h
简历30min
项目文档30min
实际
11:00起床
16:00学习
Linux学习
gcc常用参数
Ø -I 指定头文件所在的路径(大写i)
Ø -L 指定库文件所在的路径
Ø -l 指定库的名字(小写l)
Ø -o 指定生成的目标文件的名字
Ø -g 包含调试信息, 使用gdb调试需要添加-g参数
Ø -On n=0∼3 编译优化,n越大优化得越多
Ø -Wall 提示更多警告信息
Ø -D 编译时定义宏
test.c文件中的代码片段:
printf("MAX==[%d]\n", MAX);
编译:
gcc -o test test.c -D MAX=10
gcc -o test test.c -DMAX=10
静态库和共享动态库
库
2进制文件
加密的源代码
功能相似或相近的函数结合体
好处
高可重用性
让程序更健壮,不易出错
减少开发量
如何让他人使用
头文件--包含库函数的声明
库文件--包含库函数的实现
静态库
linux:
libtest.a lib+库名称+.a
如何制作
//test.h
void fun1();
void fun2();
// fun1.c
#include <stdio.h>
void fun1(){
printf("fun1 !\n");
}
// fun2.h
#include <stdio.h>
void fun1(){
printf("fun2 !\n");
}
$ gcc -c fun1.c -o fun1.o
$ gcc -c fun2.c -o fun2.o
$ ar rcs libtest1.a fun1.o fun2.o // 制作库
$ gcc -o mainc main1.c -I../t1/ -L../t1/ -ltest1 && ./mainc
-I 指定头文件所在的路径
-L 指定库文件所在的路径
-l 指定库文件名字
a