%macro a;
%let a=2;%let b=-2;%let c=-2.38050453744706;
%if &a>0 %then %put &a;
%if &b>0 %then %put &b;
%if &c>0 %then %put &c;
%mend;
%a;
如上程序,请问,为什么 c 没有被put出来?谢谢
********补充**************8;
我自己有个解决方案,钻了个空子:
%macro a;
%let a=2;%let b=-2;%let c=-2.38050453744706;
%if &a>0 %then %put &a;
%if &b>0 %then %put &b;
%if %substr(&c,1,2)>0 %then %put &c; *这样就不报错了;
%mend;
%a;