完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
大家好,最近我在学习关于makefile的语法,看到变量赋值展开的部分产生了疑惑,希望有朋友可以提点下:我看资料上说用“=”赋值的变量是延后展开;而用“:=”赋值的变量则是立即展开
那么如果我现在有这样几行定义: var1 = TEXT var2 = $(var1) var3 := $(var1) var4 := $(var2) 按照我的理解: 1)当make读取到第一行时,var1被赋值为TEXT 2)当make读取到第二行时,var2被赋值为$(var1)(只在后面引用var2的值时,才回去解析$(var1),而这里不做理会) 3)当meke去读到第三行时,var3被赋值为TEXT(因为这里var3的赋值方式为立即展开,所以当场解析$(var1),发现它等于TEXT,故var3等于TEXT) 4)我的问题在第四行。这里var4也是立即展开,故$(var2)被立即解析,前面第二条分析了var2当前的值就是$(var1)了。我很好奇这里会接着进一步解析$(var1)吗?还是仅把$(var1)当成普通的字符串径直赋给var4便了事。待到后面需要引用var4的时候,再去解析其值$(var1)? |
|
相关推荐
1个回答
|
|
|
有谁研究过?
|
|
|
|
|
只有小组成员才能发言,加入小组>>
TuyaOpen开源 + DshanPi-A1(RK3576)开发板的Tuya IoT平台接入与AI大模型整合方案(笔记)
1326 浏览 0 评论
「含关键代码」基于AM3352/AM3354/AM3359的Linux开发案例分享
5241 浏览 0 评论
87852 浏览 0 评论
【高手问答】如何做到精通linux技术?资深工程师带你突破难点
5306 浏览 2 评论
3997 浏览 2 评论
2326浏览 1评论
SiRider S1芯擎工业开发板测评+1.防止黑客入侵通信监控系统(PSA)
1657浏览 0评论
TuyaOpen开源 + DshanPi-A1(RK3576)开发板的Tuya IoT平台接入与AI大模型整合方案(笔记)
1326浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 07:16 , Processed in 0.602095 second(s), Total 73, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1140