Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re^2: How the auto-increment operator works?

by zapdos (Sexton)
on Aug 01, 2020 at 18:51 UTC ( [id://11120207]=note: print w/replies, xml ) Need Help??


in reply to Re: How the auto-increment operator works?
in thread How the auto-increment operator works?

Please, why my $foo = "Zz"; print ++$foo; prints "AAa" and not "Aaa"?

And why $my foo = "c9"; print ++$foo; prints "d0" and not "c10"?

Replies are listed 'Best First'.
Re^3: How the auto-increment operator works?
by LanX (Saint) on Aug 02, 2020 at 00:00 UTC
    Looks like you have three groups of symbols - digits , lower and uppercase characters - and every position stays within its group.

    If a new position is needed it'll adjust to the leftmost group.

    This makes sense to me, because the structure of a log_89ABCacd.txt file will always look the same, with only the numbers growing.

    Cheers Rolf
    (addicted to the Perl Programming Language :)
    Wikisyntax for the Monastery

      if I do my $foo = "Be"; print ++$foo; it prints "Bf".

      But if I do my $foo = "Bz"; print ++$foo; it prints "Ca". I'm not getting this at all.

        Why are you so interested in this?

        Nobody really cares as long as there is no repetition. :)

        Anyway think of this old counting machines with numbers on wheels, if one of the wheels changed from 9 to 0 it also incremented the one the the left, and so on. So 19++ becomes 20.

        That's totally the same thing, only difference is that we have three different kind of wheels.

        They are either

        • digits 0-9
        • lowercase a-z
        • uppercase A-Z

        > if I do my $foo = "Bz"; print ++$foo; it prints "Ca".

        "z" is at the upper limit like 9, when changing to the start "a" it has to increment the next position, but within it's symbol group. "C" follows "B" like 2 followed 1 when incrementing 19.

        Cheers Rolf
        (addicted to the Perl Programming Language :)
        Wikisyntax for the Monastery

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11120207]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (5)
As of 2024-04-24 06:33 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found