Indices d'octets
Utilisez les conseils suivants :
L'utilisation d'un index au niveau de l'octet dans une chaîne pose les mêmes problèmes que ceux posés par la manipulation de pointeurs.Prenons l'exemple suivant, qui montre comment analyser une chaîne pour une barre oblique inverse :
while ( rgch[ i ] != '\\' ) i++;
Cela peut indexer un octet de queue, et non un octet de tête, et ainsi peut ne pas pointer vers un character.
Utilisez la fonction _mbclen pour résoudre le problème précédent :
while ( rgch[ i ] != '\\' ) i += _mbclen ( rgch + i );
Ce code indexe correctement un octet de tête, et donc un character.La fonction _mbclen détermine la taille d'un caractère (un ou deux octets).