Compartilhar via


Função VarNumFromParseNum (oleauto.h)

Converte os resultados analisados em uma variante.

Sintaxe

HRESULT VarNumFromParseNum(
  [in]  NUMPARSE *pnumprs,
  [in]  BYTE     *rgbDig,
  [in]  ULONG    dwVtBits,
  [out] VARIANT  *pvar
);

Parâmetros

[in] pnumprs

Os resultados analisados. O membro cDig desse argumento especifica o número de dígitos presentes em rgbDig.

[in] rgbDig

Os valores dos dígitos. O campo cDig de pnumprs contém o número de dígitos.

[in] dwVtBits

Um bit definido para cada tipo aceitável como um valor retornado (em muitos casos, apenas um bit).

VTBIT_I1

VTBIT_UI1

VTBIT_I2

VTBIT_UI2

VTBIT_I4

VTBIT_UI4

VTBIT_R4

VTBIT_R8

VTBIT_CY

VTBIT_DECIMAL

[out] pvar

O resultado da variante.

Retornar valor

Essa função pode retornar um desses valores.

Código de retorno Descrição
S_OK
Êxito.
E_OUTOFMEMORY
Sem memória.
DISP_E_OVERFLOW
O número é muito grande para ser representado em um tipo permitido. Não haverá erro se a precisão for perdida na conversão.

Comentários

Para arredondar números decimais, a matriz de dígitos deve ter pelo menos um dígito a mais do que o máximo necessário para tipos de dados. O número máximo de dígitos necessários para o tipo de dados DECIMAL é 29, portanto, a matriz de dígitos deve ter espaço para 30 dígitos. Também deve haver dígitos suficientes para aceitar o número em octal, se essas opções de análise estiverem selecionadas. (Os números hexadecimais e octais são limitados por VarNumFromParseNum à magnitude de um longo sem sinal [32 bits], portanto, eles precisam de 11 dígitos octais.)

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho oleauto.h
Biblioteca OleAut32.lib
DLL OleAut32.dll