Quote:
Originally Posted by Sorrofix
D'oh! I meant C89; I forgot to say it. Let me try to clarify: I recommend following the C89 model, even if you're using a C99-capable compiler. You're not really sacrificing anything, and in return you ensure that your code compiles with the widest variety of C compilers (even if that doesn't seem useful right now, it could, further down the road).
|
You're right, but the practical benefits are minimal, so I'd suggest this is a moot point.
In practice, the majority of C89 compilers since 1994 or so have also been C++ compilers by default (the C++ support has to be explicitly disabled by command line options, or other explicit settings). And C++, in draft standards and therefore in compilers at the time, supported declaration of variables in for() constructs well before then.