Hacker News new | ask | show | jobs
by YSFEJ4SWJUVU6 3236 days ago
If you're not using the value you can't “want it”. There is only one sane way to interpret the following two expressions statements (in C), and it is that they are equal.

    g++;
    ++g;
1 comments

Well, no, you can do stupid code like:

if(g++) {

//do something

}

Which obviously will do something if g was non-zero before incrementing it by one. It's a really poor way of writing code, but I have seen it done.

They said 'if you're not using the value', and you've presented an example where they are using the value, so you're criticism doesn't apply in the case they're talking about.
First of all, I don't agree that code like that is stupid regardless of circumstances. Any programmer worth his salt understands that condition perfectly well without having to think about it.

However, it's an altogether different situation to the one I wrote about, given that the value of the incrementing expression is specifically used in that case.