楼主: 肝贝
935 2

[问答] sas小宏语句小问~~~~ [推广有奖]

  • 12关注
  • 1粉丝

幸儿

博士生

48%

还不是VIP/贵宾

-

威望
0
论坛币
675 个
通用积分
6.2212
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
294 点
帖子
192
精华
0
在线时间
264 小时
注册时间
2013-11-9
最后登录
2019-11-19

楼主
肝贝 发表于 2014-3-4 20:51:59 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
%macro dw(word);
%let i=1;
data out;
%do %while (%left(%scan(&word.,&i.)) ne %nrbquote(stop));
%let var=%scan(&word.,&i.);
%put &var.;
out="&var";
output;
%let i=%eval(&i.+1);
%put &i.;
%end;
run;
%mend dw;
%dw(%str(test1,test2,test3));
这是我在书本上摘录的一段程序,解析太简单,看起来太不懂,求解释啊,为什么运行的时候是无限运行下去呢,都不停止啊~~
求大神帮忙,多谢,您略微指点一二,对我都是很大的收获,多谢多谢~~~~

二维码

扫码加我 拉你入群

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

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

关键词:output Quote while Macro outpu

I'll never let go.

沙发
mingfeng07 学生认证  发表于 2014-3-4 21:52:19
do while语句里的条件明显永远满足,自然永远运行下去了,如果你把宏参数%str(test1,test2,test3)改成%str(test1,test2,stop),那自然到第三步就停止了。
欢迎扫一扫我头像关注, 不定期分享SAS技术知识。

藤椅
肝贝 发表于 2014-3-4 22:42:47
mingfeng07 发表于 2014-3-4 21:52
do while语句里的条件明显永远满足,自然永远运行下去了,如果你把宏参数%str(test1,test2,test3)改成%str( ...
哦~我好像懂一点点了~~谢谢谢谢[em23]~~~~
I'll never let go.

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 05:24