Condividi tramite


Funzione StrToInt64ExA (shlwapi.h)

Converte una stringa che rappresenta un valore decimale o esadecimale in un intero a 64 bit.

Sintassi

BOOL StrToInt64ExA(
  [in]  PCSTR      pszString,
        STIF_FLAGS dwFlags,
  [out] LONGLONG   *pllRet
);

Parametri

[in] pszString

Tipo: PCTSTR

Puntatore alla stringa con terminazione Null da convertire. Per altri dettagli sulle forme valide della stringa, vedere la sezione Osservazioni.

dwFlags

Tipo: STIF_FLAGS

Uno dei valori seguenti che specificano la modalità di analisi di pszString per la conversione in un numero intero a 64 bit.

STIF_DEFAULT

La stringa in pszString contiene la rappresentazione di un valore decimale.

STIF_SUPPORT_HEX

La stringa in pszString contiene la rappresentazione di un valore decimale o esadecimale. Si noti che nelle rappresentazioni esadecimali i caratteri A-F non fanno distinzione tra maiuscole e minuscole.

[out] pllRet

Tipo: LONGLONG*

Puntatore a una variabile di tipo LONGLONG che riceve il valore intero a 64 bit della stringa convertita. Ad esempio, nel caso della stringa "123", l'intero a cui punta questo valore riceve il valore 123.

Se questa funzione restituisce FALSE, questo valore non è definito.

Se il valore restituito è troppo grande per essere contenuto in una variabile di tipo LONGLONG, questo parametro contiene i 64 bit di ordine basso del valore. Tutti i bit di ordine elevato oltre i quali vengono persi.

Valore restituito

Tipo: BOOL

Restituisce TRUE se la stringa viene convertita; in caso contrario FALSE.

Commenti

La stringa a cui punta il parametro pszString deve essere analizzata correttamente una delle forme seguenti.

  • Questo modulo viene accettato come valore decimale in entrambi i flag. Sintassi ''' (spazio vuoto facoltativo)(segno facoltativo)(una o più cifre decimali) '''
  • Questi moduli sono necessari per i valori esadecimali quando viene passato il flag STIF_SUPPORT_HEX. Sintassi ''' (spazio vuoto facoltativo)(segno facoltativo)0x(una o più cifre esadecimali) '''
    (optional white space)(optional sign)0X(one or more hexadecimal digits)
    
Il segno facoltativo può essere il carattere '-' o '+'; se omesso, si presuppone che il segno sia positivo.
Nota Se il valore viene analizzato come esadecimale, il segno facoltativo viene ignorato, anche se è un carattere "-". Ad esempio, la stringa "-0x1" viene analizzata come 1 anziché -1.
 
Se la stringa a cui punta pszString contiene un carattere non valido, tale carattere viene considerato la fine della stringa da convertire e il resto viene ignorato. Ad esempio, data la stringa esadecimale non valida "0x00am123", StrToInt64Ex riconosce solo "0x00a", la converte nel valore intero 10 e restituisce TRUE.

Se pllRet è NULL, la funzione restituisce TRUE se la stringa può essere convertita, anche se non esegue la conversione.

Nota

L'intestazione shlwapi.h definisce StrToInt64Ex come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional, Windows XP [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shlwapi.h
Libreria Shlwapi.lib
DLL Shlwapi.dll (versione 5.0 o successiva)