in reply to whats wrong? it gives me many error
Additionally to the answers you already got on SO you should use my for all variables including $i .
have a look at use diagnostics to improve error messages (and read them ;-)
use strict; use warnings; use diagnostics; for $i (0..10) { print $i; }
read the part about lexically scoped variables:
Global symbol "$i" requires explicit package name at /tmp/tst2.pl line + 6. Global symbol "$i" requires explicit package name at /tmp/tst2.pl line + 7. Execution of /tmp/tst2.pl aborted due to compilation errors (#1) (F) You've said "use strict" or "use strict vars", which indicates + that all variables must either be lexically scoped (using "my" or +"state"), declared beforehand using "our", or explicitly qualified to say which package the global variable is in (using "::"). Uncaught exception from user code: Global symbol "$i" requires explicit package name at /tmp/tst2.pl +line 6. Global symbol "$i" requires explicit package name at /tmp/tst2.pl line + 7. Execution of /tmp/tst2.pl aborted due to compilation errors. at /tmp/tst2.pl line 10
if you don't know what lexically scoped is, have a look at Coping with Scoping
Cheers Rolf
(addicted to the Perl Programming Language and ☆☆☆☆ :)
PS: crossposting provokes downvotes! :)
|
---|
In Section
Seekers of Perl Wisdom