title: sscanf only partially reads comma-delimited list
body: <p>I have such string in buff:</p>
  
  <pre><code>$GPGGA,031956,2218.2035,N,11410.7595,E,1,04,3,9,005.9,M,-001.3,M,,*51
  </code></pre>
  
  <p>What am I doing is reading some values between comas to arrays:</p>
  
  <pre><code>char ts[16];
  char lat[16];
  char latd[16];
  char lon[16];
  char lond[16];
  char sats[16];
  
  sscanf(
         buff,
         "%*[^,],%[^,]s,%[^,]s,%[^,]s,%[^,]s,%[^,]s,%*[^,],%[^,]s",
         ts,lat,latd,lon,lond,sats
         );
  </code></pre>
  
  <p>sscanf reads ts well (031956). However lat, latd etc. are not filled with any value.</p>
  
  <p>Why it happens ?</p>