Freigeben über


Inkrementieren und Dekrementieren von Zeigern

Verwenden Sie die folgenden Tipps:

  • Zeigen Sie auf Leadbytes, nicht auf Trailbytes. Es ist in der Regel unsicher, einen Zeiger auf ein Trail-Byte zu haben. Normalerweise ist es sicherer, eine Zeichenfolge vorwärts zu scannen, anstatt umgekehrt.

  • Es stehen Zeiger-Inkrement-/Dekrementfunktionen und Makros zur Verfügung, die sich über ein ganzes Zeichen bewegen:

    sz1++;
    

    wird:

    sz1 = _mbsinc( sz1 );
    

    Die _mbsinc Funktionen _mbsdec werden unabhängig von der Zeichengröße in Einheiten ordnungsgemäß erhöht und erhöht character .

  • Für Dekrementierung benötigen Sie einen Zeiger auf den Kopf der Zeichenfolge, wie in der folgenden Abbildung gezeigt:

    sz2--;
    

    wird:

    sz2 = _mbsdec( sz2Head, sz2 );
    

    Alternativ kann der Kopfzeiger auf ein gültiges Zeichen in der Zeichenfolge lauten:

    sz2Head < sz2
    

    Sie müssen einen Zeiger auf ein bekanntes gültiges Leadbyte haben.

  • Möglicherweise möchten Sie einen Zeiger auf das vorherige Zeichen für schnellere Aufrufe _mbsdecbeibehalten.

Siehe auch

Tipps für die MBCS-Programmierung
Byte-Indizes