On Thu, 03 Mar 2011 14:34:13 -0500, m.roth-x6lchVBUigD1P9xLtpHBDw wrote:
Michael D. Berger wrote:
In a context where exceptions are caught, I ran the fragment:
cerr << "allocating" << endl; char* arr[100]; for (int jj = 0; jj < 10; ++jj) {
<snip> > Wherein do I err?
It would have been caught on 0 if that was jj++, *not* ++jj (increment *after* the loop, not before).
mark
I believe that this is incorrect. Any item in the third position of a for(;;) is executed after the body of the loop. In this case ++jj and jj++ don't make any difference (except that perhaps ++jj is a little faster). In any case, the delays observed indicate that there was one allocation.
Mike.