data a1;
input a $ b $ @@;
cards;
23 45 34 34 54 34
;
run;
data _null_;
set a1;
array tmp[*] _character_;
call symputx("nvar",dim(tmp));
run;
data tmp;
set a1 end=eof;
array tmp[*] _character_;
length vars $ 32767;
retain vars "";
array num[&nvar.];
do i=1 to dim(tmp);
num[i]=input(tmp[i],best.);
if eof then vars=catx(" ",vars,cats(vname(num[i]),"=",vname(tmp[i])));
end;
if eof then call symputx ("vars",vars);
drop _character_ i;
run;