Funzione RtlStringCchLengthA (ntstrsafe.h)
Le funzioni RtlStringCchLengthW e RtlStringCchLengthA determinano la lunghezza, espressa in caratteri, di una stringa fornita.
Sintassi
NTSTRSAFEDDI RtlStringCchLengthA(
[in] STRSAFE_PCNZCH psz,
[in] size_t cchMax,
size_t *pcchLength
);
Parametri
[in] psz
Puntatore a un buffer che contiene una stringa con terminazione Null, la cui lunghezza verrà controllata.
[in] cchMax
Numero massimo di caratteri consentiti nel buffer a cui punta psz, incluso il carattere null di terminazione. Questo valore non può superare NTSTRSAFE_MAX_CCH.
pcchLength
Se il chiamante fornisce un puntatore di indirizzo non NULL , la funzione carica l'indirizzo con la lunghezza, in caratteri, della stringa contenuta nel buffer. La lunghezza non include il carattere null di terminazione della stringa.
Valore restituito
La funzione restituisce uno dei valori NTSTATUS elencati nella tabella seguente. Per informazioni su come testare i valori NTSTATUS, vedere Utilizzo di valori NTSTATUS.
Codice restituito | Descrizione |
---|---|
|
Questo stato di esito positivo indica che la stringa in psz non è NULL e la lunghezza della stringa (incluso il carattere Null di terminazione) è minore o uguale a cchMax caratteri. |
|
Questo stato di errore indica che il valore in psz è NULL, cchMax è maggiore di NTSTRSAFE_MAX_CCH o psz è più lungo di cchMax. |
Commenti
È consigliabile usare RtlStringCchLengthW e RtlStringCchLengthA anziché strlen. Vengono usati per garantire che una stringa non sia maggiore di una lunghezza specificata, in caratteri. Se tale condizione viene soddisfatta, RtlStringCchLengthW e RtlStringCchLengthA restituiscono la lunghezza corrente della stringa in caratteri, senza includere il carattere Null di terminazione.
Usare RtlStringCchLengthW per gestire stringhe Unicode e RtlStringCchLengthA per gestire le stringhe ANSI. Il modulo usato dipende dai dati, come illustrato nella tabella seguente.
Dati di tipo stringa | Valore letterale stringa | Funzione |
---|---|---|
WCHAR | L"string" | RtlStringCchLengthW |
char | "stringa" | RtlStringCchLengthA |
Per altre informazioni sulle funzioni di stringa sicura, vedere Using Safe String Functions.For more information about the safe string functions, see Using Safe String Functions.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows XP con Service Pack 1 (SP1) e versioni successive di Windows. |
Piattaforma di destinazione | Desktop |
Intestazione | ntstrsafe.h (include Ntstrsafe.h) |
Libreria | Ntstrsafe.lib |
IRQL | Se le stringhe modificate sono sempre residenti in memoria, in caso contrario PASSIVE_LEVEL |