Condividi tramite


Funzione VarParseNumFromStr (oleauto.h)

Analizza una stringa e crea una descrizione indipendente dal tipo del numero rappresentato.

Sintassi

HRESULT VarParseNumFromStr(
  [in]  LPCOLESTR strIn,
  [in]  LCID      lcid,
  [in]  ULONG     dwFlags,
  [out] NUMPARSE  *pnumprs,
  [out] BYTE      *rgbDig
);

Parametri

[in] strIn

Stringa di input da convertire.

[in] lcid

Identificatore delle impostazioni locali.

[in] dwFlags

Consente al chiamante di controllare l'analisi, definendo quindi la sintassi accettabile di un numero. Se questo campo è impostato su zero, la stringa di input deve contenere nulla ma cifre decimali. L'impostazione di ogni bit di flag definito consente l'analisi di tale funzionalità sintattica. L'analisi di Automazione standard (ad esempio, utilizzata da VarI2FromStr) include tutti i flag impostati (NUMPRS_STD).

[out] pnumprs

Risultati analizzati.

[out] rgbDig

I valori per le cifre nell'intervallo 0-7, 0-9 o 0-15, a seconda che il numero sia ottale, decimale o esadecimale. Tutti gli zero iniziali sono stati rimossi. Per i numeri decimali, anche gli zero finali vengono rimossi, a meno che il numero non sia zero, nel qual caso sarà presente una singola cifra zero.

Valore restituito

Questa funzione può restituire uno di questi valori.

Codice restituito Descrizione
S_OK
Operazione completata.
E_OUTOFMEMORY
Allocazione di memoria interna non riuscita. Usato solo per DBCS per creare una copia con tutti i caratteri wide mappati.
DISP_E_TYPEMISMATCH
Non esiste alcun numero valido nella stringa oppure non esiste alcuna parentesi di chiusura per corrispondere a una di apertura. Nel caso precedente, cDig e cchUsed nella struttura NUMPARSE saranno zero. In quest'ultimo caso la struttura NUMPARSE e la matrice di cifre vengono completamente aggiornate, come se fosse presente la parentesi di chiusura.
DISP_E_OVERFLOW
Per le cifre esadecimali e ottali, ci sono più cifre che si adattano alla matrice. Per decimal, l'esponente supera il massimo possibile. In entrambi i casi, la struttura NUMPARSE e la matrice di cifre vengono completamente aggiornate (per decimale, il campo cchUsed esclude l'intero esponente).

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione oleauto.h
Libreria OleAut32.lib
DLL OleAut32.dll