Partager via


Incrémentation et décrémentation de pointeurs

Utilisez les conseils suivants :

  • Pointez sur les octets de prospect, et non sur les octets de fin. Il est généralement dangereux d’avoir un pointeur vers un octet de fin. Il est généralement plus sûr d’analyser une chaîne vers l’avant plutôt que dans l’inverse.

  • Il existe des fonctions d’incrémentation/décrémentation de pointeur disponibles qui se déplacent sur un caractère entier :

    sz1++;
    

    devient :

    sz1 = _mbsinc( sz1 );
    

    Les _mbsinc fonctions et _mbsdec incrémentent correctement et décrémentent en character unités, quelle que soit la taille du caractère.

  • Pour les décréments, vous avez besoin d’un pointeur vers la tête de la chaîne, comme dans les éléments suivants :

    sz2--;
    

    devient :

    sz2 = _mbsdec( sz2Head, sz2 );
    

    Sinon, votre pointeur de tête peut être vers un caractère valide dans la chaîne, de sorte que :

    sz2Head < sz2
    

    Vous devez avoir un pointeur vers un octet de prospect valide connu.

  • Vous souhaiterez peut-être conserver un pointeur vers le caractère précédent pour accélérer les appels vers _mbsdec.

Voir aussi

Conseils de programmation MBCS
Indices d’octets