title: warning C4018: '<' : signed/unsigned mismatch
body: <p>On migrating a project from vc++ 6.0 to vs 2008, I get the below warnings. Can anyone please explain me why this warning occurs?</p>
  
  <pre><code>inline tstring&amp; tstring::trim()
  {
      long lDelFront = 0, lDelBack = 0;
  
      while (lDelFront &lt; length() &amp;&amp; at(lDelFront) == ' ')      //C4018 Warning
          lDelFront++;
  
      if ( lDelFront &gt; 0 )
      {
          erase(0, lDelFront);
      }
  
      while (lDelBack &lt; length() &amp;&amp;                       //C4018 Warning
              at(length() - lDelBack - 1) == ' ')
          lDelBack++;
  
      if ( lDelBack &gt; 0 )
      {
          erase(length() - lDelBack, lDelBack);
      }
  
      return *this;
  }
  </code></pre>
  
  <p>Thanks!
  Ankush</p>