Actually, having the variables go out of scope should be at least as fast.
The compiler doesn't actually do anything to make the old variable
inaccessible and get a new variable; with the variable uninitialized, it's
legitimate for the compiler to simply reuse the same storage for all
iterations. Futhermore, with the variables declared inside the loop, the
compiler is allowed to make optimizations that would fail to preserve
those variables between iterations. There are probably no such
optimizations in this code for it to make, but, in general, letting
variables in loops go out of scope (in C) only improves optimization
possibilities.
-Daniel
*This .sig left intentionally blank*