247
i++ (programming.dev)
you are viewing a single comment's thread
view the rest of the comments
[-] mfz@kbin.social 8 points 1 year ago* (last edited 1 year ago)

Isn't the evaluated value different from the expression? i++ returns the value of i before increasing. i-=-1 would return the value after it has been increased. Wouldn't it be more correct to make it equal to ++i

[-] maiskanzler@feddit.de 8 points 1 year ago

And that's why post- and pre-increment is non-existant in Python and Rust. It's an easy source for bugs for a noncritical abbreviation🤷

[-] Knusper@feddit.de 5 points 1 year ago

They're especially also a source of bugs, because they encourage manually incrementing indices and manually accessing array positions, which is almost never actually sensible.

[-] argv_minus_one@beehaw.org 2 points 1 year ago

I love iterators so much.

[-] Barzaria@lemmy.dbzer0.com 4 points 1 year ago

Please explain in less detail to help me understand, internet friend.

[-] mfz@kbin.social 4 points 1 year ago

In C you can group expressions within ( and ) separated with ,. Expressions are evaluated in order and the last expression in the group is the returned value of the group.

[-] Knusper@feddit.de 4 points 1 year ago

In the languages I know, i-=-1 or x=3 are not expressions, but rather statements, so they do not evaluate to a value.

So, this would be a compiler error:

a = (x=3)
[-] mfz@kbin.social 9 points 1 year ago

Well, not all languages allow for fun programming :)

[-] Knusper@feddit.de 4 points 1 year ago

Sounds like the opposite of fun to me, to have those as expressions...

[-] mfz@kbin.social 4 points 1 year ago* (last edited 1 year ago)

If you're hell bend on achieving the goodness of i++ equivalent you could wrap it up like this:
(i-=-1,i-1)

We're talking C here of course.

this post was submitted on 19 Jun 2023
247 points (100.0% liked)

Programmer Humor

19331 readers
1 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS