C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 89 - VarNumFromParseNum / COM-справка / Приложение

Шаг 89 - VarNumFromParseNum

После разбора строки, задающей число, его результаты можно преобразовать в число при помощи функции VarNumFromParseNum. Функции можно передать структуру NUMPARSE и массив цифр, полученные от VarParseNumFromStr или из любого другого источника. Функция выберет самый малый допустимый тип, который может содержать значение результата разбора с минимальной потерей точности. Вариант, в который помещается результат, — это выходной параметр, так что его содержимое не освобождается перед заполнением.

HRESULT VarNumFromParseNum 
( 
	[in] NUMPARSE *pnumprs, 
	[in] unsigned char *rgbDig, 
	[in] unsigned long dwVtBits, 
	[out] VARIANT *pvar
);

Параметры:
pnumprs
Результаты разбора. CDig задает размер rgbDig.
rgbDig
Содержит значения цифр. Поле cDig структуры NUMPARSE содержит число цифр.
dwVtBits
Содержит битовые флажки, задающие допустимые типы возвращаемого значения (во многих случаях установлен лишь один бит).
Используются следующие флаги:

VTBIT_I1
VTBIT_UIl
VTBIT_I2
VTBIT_UI2
VTBIT_I4
VTBIT_UI4
VTBIT_R4
VTBIT_R8
VTBIT_CY
VTBIT_DECIMAL

pvar
Указатель на вариант, в который помещается результат.

Коды возврата:
Из возвращенного HRESULT получают один из следующих кодов возврата:

Код возвратаЗначение
S_OKУспех.
Е_OUTOFMEMORYНе хватает памяти.
DISP_E_OVERFLOWЧисло слишком велико для любого из разрешенных типов результата. Потеря точности при преобразовании не считается ошибкой.

Для округления десятичных чисел массив цифр должен быть по крайней мере на одну цифру длиннее, чем максимальное число цифр для типа данных. Для типа данных DECIMAL максимальное число цифр равно 29, так что в массиве должно быть место не менее чем для 30 цифр. Кроме того, цифр должно быть достаточно для приема числа в восьмеричной системе счисления, если была выбрана эта опция. (VarNumFromParseNum ограничивает максимальное значение шестнадцатеричных и восьмеричных чисел размером типа unsigned long [32 бита] и, таким образом, требуется 11 восьмеричных цифр.)


| |
Автор Каев Артем.
[AD]