|In reply to Comment 206 (Mike Powell):|
Here's a typical fragment. Apparently people used to pay money for the program from which this extract is taken...
Tempw=Tempw >> 9;
What are Xlim and Count? Why the numbers 636, 71, and 78? Why a 9 bit right shift (and why not division by 512, if that's what is meant)? All undocumented. If we guess that Temp and Tempw are temporary values, not some magic which will be re-used much later in the rambling subroutine from which this extract was taken, why aren't they local to the block in which they are used?
Since Xlim is constant for the duration of the loop, why use a variable for this value 636 all? A named constant or pre-processor macro would also be a good place to explain the significane of the magic number.
The idiom is poor too. C has accumulator operators, so a competent native C programmer writes Jum += Jump; making the intention clear, rather than using the equivalent but less clear Jum = Jum + Jump. C includes a powerful for loop which is perfectly suited to the initialisation, stepping and conditional termination of a loop to be executed zero or more times, but this example uses a while loop instead.