笔记6

3.15
小贴士:

---->cp -r(复制文件夹)(递归----一级一级查目录)
---->创建的 main.h文件主要当做库来使用(存放被调函数的 所有函数声明)
---->vim …/hello.c(编辑上一个目录中的.c文件)
---->vim main/mian.c 编辑main文件夹下的mian.c文件

企业级Makefile编写:
1.总控makefile:进入各个功能子目录执行make命令,并将所有.o文件生成可执行文件
2.功能目录makefile:将功能目录下的所有.c文件编译成.o文件
3.脚本目录makefile:定义其他makefile文件所用到的变量

阅读makefile顺序 3-1-2

-----------------------脚本里面的一些含义-----------------------------

4. ( w i l d c a r d + 空 格 + 模 式 参 数 ) − − − − − − − − − − − > ( w i l d c a r d 是 一 个 函 数 ) e g : r e s u l t : = (wildcard+空格+模式参数)----------->(wildcard 是一个函数) eg:result: = (wildcard++)>(wildcard)eg:result:=(wildcard *.c)
result 返回值------>列出当前目录下所有.c文件

5. ( p a t s u b s t + 空 格 + 模 式 参 数 , 参 数 1 , 参 数 2 ) − − − − − − − − − − > ( p a t s u b s t 是 一 个 函 数 ) e g : r e s u t : (patsubst+空格+模式参数,参数1,参数2)---------->(patsubst 是一个函数) eg:resut: (patsubst++,1,2)>(patsubst)eg:resut:(patsubst %.c,%.o,x.c y.c)
result 返回值-------->x.o,y.o

6.:=------>(防止出现死循环)
a1 :=a.o
a2 :=$(a1)b.o
a1=a.o a2=a.o b.o

a1:=$(a2)b.o
a2:=a.o
a1:=b.o a2:=a.o

+=------->给这个变量追加值
a1=a.o
a1 +=b.o
a1 +=a.o b.o

a1=a.o
a1:=$(a1)b.o
a1=a.o b.o

7. ( a d d s u f f i x 参 数 1 , 参 数 2 ) − − − − > 将 参 数 2 中 每 个 单 词 都 加 上 参 数 1 的 后 缀 e g : r e s u l t : = (addsuffix 参数1,参数2)---->将参数2中每个单词都加上参数1的后缀 eg: result:= (addsuffix12)>21eg:result:=(addsuffix .c,x y)
----->返回值result=x.c y.c

----------------------总控makefile-----------------------
8.foreach
( f o r e a c h 变 量 参 数 , 参 数 1 , 表 达 式 ) − − − − − − − − > 功 能 : 循 环 取 出 参 数 1 中 的 单 词 赋 值 给 变 量 参 数 , 然 后 运 行 表 达 式 。 返 回 值 为 表 达 式 的 结 果 。 e g : a : = x y z r e s u l t : = (foreach 变量参数,参数1,表达式)-------->功能:循环取出参数1中的单词赋值给变量参数,然后运行表达式。返回值为表达式的结果。 eg: a:=x y z result:= (foreach1)>1eg:a:=xyzresult:=(foreach b, ( a ) , (a), (a),(b).c)
result= x.c y.c z.c

9.call
( c a l l 变 量 参 数 , 参 数 . . . . . . . ) − − − − − > 功 能 : 循 环 把 参 数 依 次 赋 值 给 变 量 参 数 中 的 (call 变量参数,参数.......)----->功能:循环把参数依次赋值给变量参数中的 (call.......)>(1), ( 2 ) . . . . . . . 返 回 值 为 赋 值 后 的 变 量 值 e g : a : = (2).......返回值为赋值后的变量值 eg: a:= (2).......eg:a:=(2) ( 1 ) r e s u l t : = (1) result:= (1)result:=(call $(a),x y)
result=yx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值