I personally believe it's a combination of personal favor and/or agreements/standards within the team or company you work with.
Personality using C prefix for classes and mXxx for member vars help me in distincting them from each other. I also use pXxxx prefix for all function parameters, which I understand can be interpreted wrong (p could be pointer). I only do this because it helps me in efficiency, and I'm not bound to team or organization standards/rules.
If you want to make sure it's something "unpredictable", my advice would be to debug the VS and PS using a shader debugger. Visual studio has one integrated, depending on the version and the dx version our using. For DX9 you can use pix for Windows.
That way you can see in which step the data gets messed up