He's not an idiot. He assumed you knew basic C++ ur the idiot for not knowing it and asking a question that has no right answer. What you should have asked is "what does this do, cuz idk?"
Also there's no speed penalty. All loops get transformed into do-while loops when assembled. at least for VS & Delphi. there's 1 extra jump because the value is incremented after the boolean evaluation, so it skips this the first run through. that's it.