The following SAS program is submitted:
%let a = cat;
%macro animal(a = frog);
%let a = bird;
%mend;
%animal(a = pig)
%put a is &a;
What is written to the SAS log?
请回答并解释
The local symbol table is deleted when the macro finishes execution.That is,the local symbol table exists only while the macro executes.
在这个宏定义中产生的A的值是存在于symbol表中的,而后面的引用是在global表中产生的A值,故其值为cat