title: What is this for-loop doing and can write it differently?
body: <p>I just found this piece of code in a software project I'm interested in and I don't quite understand what this for-loop is doing:</p>
  
  <p><code>for (; *szMask; ++szMask, ++pData, ++bMask)</code></p>
  
  <p>This are the definitions of the used variables:</p>
  
  <p><code>const BYTE* pData, const BYTE* bMask, const char* szMask</code></p>
  
  <p>Can you please explain me what this loop does and if there are other ways I can write this for-loop with the same result?</p>