· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.WIN32 —› IntToStr and StrToInt

Посл.отвђт Сообщенiе


Дата: Янв 9, 2003 15:02:31

Народ, подскажие пожалуйста, есть ли в MASM`е похожие функции или в API что бы Целое число преобразовать в Строку и наоборот, или надо писать свою процедурку ?


Дата: Янв 9, 2003 15:10:44

И если можно с примером или с ссылочкой


Дата: Янв 9, 2003 15:12:38

\masm32\M32LIB
\masm32\help\MASMLIB.HLP

Тока аккуратно, попадаются глюкавые.


Дата: Янв 9, 2003 15:19:01

Поковыряй wsprintf при ее помощи можно много сделать.


Дата: Янв 10, 2003 04:44:07

2Four-F
Что то я там не нашел функция перевода из Числа (Целого) в Строку, там есть из Числа (float) в Строку, но это мне не подходит

Не могли бы вы мне показать пример, пару строк, с конвертированием Числа в Строку....ведь вы же пишите проги...небось постоянно с этим встречаетесь ?

(Мне надо в *.ini файл записать числовой параметр, а функции запиши в этот файл принимают только строковый буффер, если не можете подсказать как Конвертировать Число не могли бы Вы подсказать как в *.ini файл влепить Числовой параметр)


Дата: Янв 10, 2003 11:40:54

Это делается с помощью wsprintf.
Функчия довольно сложная, поэтому ребята и заленились ее реализовывать.

.const
formatDec db "%u", 0
formatHex db "%08X", 0

.code
invoke wsprintf, addr buffer, addr formatDec, 16
;получишь "16"
invoke wsprintf, addr buffer, addr formatHex, 16
;получишь "00000010"

Если нужна реализация этой функции на асме поищи в "Assembly Programming Journal". Вроде там было.


Дата: Янв 10, 2003 16:28:41

ну и в masm32 тоже есть.

dwtoa convert a DWORD value to an ascii string.
dw2hex converts a DWORD value to an ascii hex string.
dw2ah converts DWORD size data to a hexadecimal ascii string.
udw2str converts an UNSIGNED DWORD to a string.

Просто wsprintf универсальна и 100% без глюков.


[Ig[Y]ek: как в *.ini файл влепить Числовой параметр]

local buffer[16]:CHAR

invoke dwtoa, 123, addr buffer
invoke WritePrivateProfileString, addr szSectionName, addr szKeyName, addr buffer, addr szIniFileName


Дата: Янв 11, 2003 17:34:18

Огромное спасибо


Дата: Янв 12, 2003 13:05:42 · Поправил: Four-F

Насчет глюков.
На моей памяти, в dwtoa было обнаружено целых два бага.
После обнаружения второго, я перестал юзать всю библиотеку m32lib :-(

Скорми ей 80000000h. Если получишь "-214748365." (с точкой вместо последней цифры), то это он и есть - второй баг.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.071