in reply to use of strict
What is the error message that you get when you use strict?
There is no sprint function in Perl, but there is a sprintf function in Perl.
The common approach is to predeclare your variables as lexical variables using the my keyword.
my $w = 3; my $str = "abc"; my $line = sprintf "%${w}s ", $str; # still has an error
Not knowing the error you got, after declaring your variable names, you will still get an error that you can't use 3 as a reference while strict is in effect. This is because Perl sees %${w} and interprets it as %{ ${ w }}, trying to interpret the value of $w as a reference. You can circumvent that problem by building your format string piecemeal:
my $line = sprintf "%" . $w . "s ", $str;
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: use of strict
by shmem (Chancellor) on Jul 25, 2017 at 07:48 UTC | |
by Corion (Patriarch) on Jul 25, 2017 at 07:54 UTC |