Compartir a través de


Función VarNumFromParseNum (oleauto.h)

Convierte los resultados analizados en una variante.

Sintaxis

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

Parámetros

[in] pnumprs

Resultados analizados. El miembro cDig de este argumento especifica el número de dígitos presentes en rgbDig.

[in] rgbDig

Valores de los dígitos. El campo cDigdeprs contiene el número de dígitos.

[in] dwVtBits

Un bit establecido para cada tipo que es aceptable como un valor devuelto (en muchos casos, solo un bit).

VTBIT_I1

VTBIT_UI1

VTBIT_I2

VTBIT_UI2

VTBIT_I4

VTBIT_UI4

VTBIT_R4

VTBIT_R8

VTBIT_CY

VTBIT_DECIMAL

[out] pvar

Resultado de la variante.

Valor devuelto

Esta función puede devolver uno de estos valores.

Código devuelto Descripción
S_OK
Correcto.
E_OUTOFMEMORY
Memoria insuficiente
DISP_E_OVERFLOW
El número es demasiado grande para representarse en un tipo permitido. No hay ningún error si se pierde precisión en la conversión.

Comentarios

Para redondear números decimales, la matriz de dígitos debe ser al menos un dígito más largo que el máximo necesario para los tipos de datos. El número máximo de dígitos necesarios para el tipo de datos DECIMAL es 29, por lo que la matriz de dígitos debe tener espacio para 30 dígitos. También debe haber suficientes dígitos para aceptar el número en octal, si se seleccionan las opciones de análisis. (Los números hexadecimales y octales están limitados por VarNumFromParseNum a la magnitud de un largo sin signo [32 bits], por lo que necesitan 11 dígitos octales).

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado oleauto.h
Library OleAut32.lib
Archivo DLL OleAut32.dll