"Can someone help me please?"

Can you be more specific about what you don't understand?

If $foo is a string of alpha characters and you use ++ you get a string with
the last character incremented alphabetically.

This does not work both ways, -- does not reverse the effect of ++ on
strings.

                                /\/\ark















-----Original Message-----
From: Anil Shekhar [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, October 08, 2002 9:48 AM
To: [EMAIL PROTECTED]
Subject: autoincrement and autodecrement


Hi ...

I am trying to understand the auto-incr/decr out of the 'perlop' man page.

I could not fully understand the following.

"If, however, the variable has been used in only string contexts since it
was set, and has a value that is not the empty string and matches the
pattern /^[a-zA-Z]*[0-9]*$/, the increment is done as a string, preserving
each character within its range, with carry:


    print ++($foo = 'Az');      # prints 'Ba'
    print ++($foo = 'zz');      # prints 'aaa'
"

Can someone help me please?

Thanks
Anil
Auto-increment and Auto-decrement
``++'' and ``--'' work as in C. That is, if placed before a variable, they
increment or decrement the variable before returning the value, and if
placed after, increment or decrement the variable after returning the value.

The auto-increment operator has a little extra builtin magic to it. If you
increment a variable that is numeric, or that has ever been used in a
numeric context, you get a normal increment. If, however, the variable has
been used in only string contexts since it was set, and has a value that is
not the empty string and matches the pattern /^[a-zA-Z]*[0-9]*$/, the
increment is done as a string, preserving each character within its range,
with carry:


    print ++($foo = '99');      # prints '100'
    print ++($foo = 'a0');      # prints 'a1'
    print ++($foo = 'Az');      # prints 'Ba'
    print ++($foo = 'zz');      # prints 'aaa'
The auto-decrement operator is not magical.






-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to