BookmarkSubscribeRSS Feed
R_A_G_
Calcite | Level 5

Hello,

Could some explain to me what is the difference between single and double ampersand.

thanks

8 REPLIES 8
JerryLeBreton
Pyrite | Level 9
Tom
Super User Tom
Super User

Multiple && will let the macro processor know that it needs to rescan the token to fully evaluate the macro variable reference. This will allow you to use a macro variable to hold the ame of the variable that you actually what.

%Let name=var1;

%let var1=45;

%let n=1;

%put &&var&n;

%put &&&name;

Tal
Pyrite | Level 9 Tal
Pyrite | Level 9

&& and & resolve the same value,right?

Amir
PROC Star

Hi,

A double ampersand resolves to a single ampersand. Try using:

options symbolgen;

before @Tom's macro code to see messages in the log explaining what is being resolved.

Regards,

Amir.

Tom
Super User Tom
Super User

Right, and also trigger the compiler to re-evaluate the result.

So &&var&n --> &var1 --> 45

R_A_G_
Calcite | Level 5

how about &&&name ?

what would this resolves into?

Reeza
Super User

45

sassharp
Calcite | Level 5

That is Forward Re-scan rule. If you have SAS advanced Certification Book they explained in Chapter 10.

http://www.caliberdt.com/tips/May2006.htm

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 8 replies
  • 1755 views
  • 0 likes
  • 7 in conversation