Funktion - MyGetStrTok

Kurzbeschreibung

Liefert aus einem gegebenen String, der mit Trennzeichen unterteilt ist, den n-ten Block.

Parameter:

Code

#include <string.h>
 
void myGetStrTok(char *str, char *dest, char delchar, uint8_t index)
{
  uint8_t charcnt = 0;
  uint8_t delcnt = 0;
  uint8_t destcnt = 0;
  memset(dest, 0x00, strlen(dest)); // clear destination string
 
  while (str[charcnt])
  {
    if (delcnt == index)
    {
      dest[destcnt++] = str[charcnt]; // correct token found: copy it
    }
 
    if (str[charcnt] == delchar)
    {
      delcnt++; // delimiter char found
    }
 
    if (delcnt > index)
    {
      dest[--destcnt] = 0;  // next token selected, now abort function
      return;
    }
 
    charcnt++;
    if (charcnt == 0xFF) // prevent overflow
    {
      return;
    }
  }
}


Letzte Änderung: 2015-02-18 21:41:11
Seite erzeugt in 0.007 Sekunden (7.2 kB)