全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1321 2
2015-12-25
1.png

这里的put难道不是输出局部变量吗?还有macro one的参数input,最后调用变成%one(&date)好奇怪,哪位大神能把整个编译执行环节讲一下,小白感激不尽啊。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-12-25 14:45:50
主要是%two将data _null_中的&date变成了全局变量
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-25 23:07:25
我来尝试解释下呢,足球直播即将开始。

从结构上说,前面堆了两个宏,用于编译阶段SAS的储存,

后面的%let date是硬货,将date宏变量编入Global表中,date成分已定。

接着ONE宏执行,&date值传给input,这是个假动作

date依然以Global的身份访问ONE宏,但是在%put句之前,它还是遇到了守门员TWO宏

date在TWO宏这么一走坏事了,遇到了改变值的语句symput,date的值也就被改变了
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群