Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Fehler bei Str_SubStr? Kategorie: Programmierung C (von Andreas - 23.03.2011 9:53)
Ich nutze:
C-Control Pro Mega128, CC-Pro 128 Application Board
Hallo!

Hier erstmal der Code:
--- cut ---
//------------------------------------------------------------------------------
// Alle Positionen eines Zeichens in einer Zeichenkette in ein Array speichern
//
void Helper_FindCharPositions(char daten[], char zeichen[], byte pos[])
{
    byte i;
    char daten_puffer[160];

    Str_Copy(daten_puffer, daten, 0);

    #ifdef DEBUG_VERBOSE
    Msg_WriteText("rnPositionen aller '");
    Msg_WriteText(zeichen);
    Msg_WriteText("': ");
    #endif
    do
    {
        pos[i] = Str_SubStr(daten_puffer, zeichen);
        #ifdef DEBUG_VERBOSE
        Msg_WriteInt(pos[i]);
        Msg_WriteText(" ");
        #endif
        daten_puffer[pos[i]] = 0x2A;
        i++;
    } while (Str_SubStr(daten_puffer, zeichen)>-1);

    #ifdef DEBUG_VERBOSE
    Msg_WriteText("rnNeue Zeichenkette: ");
    Msg_WriteText(daten_puffer);
    #endif
}
--- cut ---

Irgendwie funktioniert das nicht so wie ich es mir vorstelle.
Die Funktion Str_SubStr liefert immer 255 zurück obwohl die
Zeichenkette im SourceStr enthalten ist. Wenn dann sollte
die Funtion doch -1 zurückgeben wenn sie die Zeichenkette
nicht findet, oder?

Mache ich was falsch oder ist das ein Bug?

fg
Andy

PS: ich verwende die neueste Beta der IDE


    Antwort schreiben


Antworten:

Re: Fehler bei Str_SubStr? (von Jo - 23.03.2011 13:20)