Whenever i put up a code for review from professional programmers they tend to point out that \"using a variable named temp is bad\" but no one seems to know why.
It's because temp suggests something about the longevity of the variable (temporary) but nothing about the meaning or significance of its content. Variables are generally best named to reflect what their underlying value is intended to represent.