Partager via


Fonction RtlStringCchLengthA (ntstrsafe.h)

Les fonctions RtlStringCchLengthW et RtlStringCchLengthA déterminent la longueur, en caractères, d’une chaîne fournie.

Syntaxe

NTSTRSAFEDDI RtlStringCchLengthA(
  [in] STRSAFE_PCNZCH psz,
  [in] size_t         cchMax,
       size_t         *pcchLength
);

Paramètres

[in] psz

Pointeur vers une mémoire tampon qui contient une chaîne terminée par null, dont la longueur sera vérifiée.

[in] cchMax

Nombre maximal de caractères autorisés dans la mémoire tampon pointée par psz, y compris le caractère null de fin. Cette valeur ne peut pas dépasser NTSTRSAFE_MAX_CCH.

pcchLength

Si l’appelant fournit un pointeur d’adresse non NULL , la fonction charge l’adresse avec la longueur, en caractères, de la chaîne contenue dans la mémoire tampon. La longueur n’inclut pas le caractère null de fin de la chaîne.

Valeur retournée

La fonction retourne l’une des valeurs NTSTATUS répertoriées dans le tableau suivant. Pour plus d’informations sur la façon de tester les valeurs NTSTATUS, consultez Utilisation de valeurs NTSTATUS.

Code de retour Description
STATUS_SUCCESS
Cette status de réussite signifie que la chaîne à psz n’était pas NULL et que la longueur de la chaîne (y compris le caractère null de fin) est inférieure ou égale à cchMax caractères.
STATUS_INVALID_PARAMETER
Cette erreur status signifie que la valeur dans psz est NULL, que cchMax est supérieur à NTSTRSAFE_MAX_CCH ou que psz est plus long que cchMax.

Remarques

RtlStringCchLengthW et RtlStringCchLengthA doivent être utilisés à la place de strlen. Ils sont utilisés pour garantir qu’une chaîne n’est pas supérieure à une longueur donnée, en caractères. Si cette condition est remplie, RtlStringCchLengthW et RtlStringCchLengthA retournent la longueur actuelle de la chaîne en caractères, sans inclure le caractère null de fin.

Utilisez RtlStringCchLengthW pour gérer les chaînes Unicode et RtlStringCchLengthA pour gérer les chaînes ANSI. Le formulaire que vous utilisez dépend de vos données, comme indiqué dans le tableau suivant.

Type de données String Littéral de chaîne Fonction
WCHAR L"string » RtlStringCchLengthW
char "chaîne" RtlStringCchLengthA
 

Pour plus d’informations sur les fonctions de chaîne sécurisée, consultez Utilisation de fonctions de chaîne sécurisée.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows XP avec Service Pack 1 (SP1) et versions ultérieures de Windows.
Plateforme cible Desktop (Expérience utilisateur)
En-tête ntstrsafe.h (include Ntstrsafe.h)
Bibliothèque Ntstrsafe.lib
IRQL Toutes les chaînes si manipulées résident toujours en mémoire, sinon PASSIVE_LEVEL

Voir aussi

RtlStringCbLength