![]() |
|
Модераторы: Akina |
![]()
|
|
| XPurple |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 4.5.2006 Где: Челябинск Репутация: 1 Всего: 1 |
Не могу найти, как называется функция , которая преобразует 16-тиричное число к 10-му виду
--------------------
Кто никогда ни о чем не спрашивает: тот либо знает все, либо не знает ничего. Не помню, кто сказал, может быть, я (с) |
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 3 Всего: 16 |
MsgBox Val("&H" & "ABCDEF" & "&")
|
|||
|
||||
| vbCrLf |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.5.2006 Где: Севастополь Репутация: 1 Всего: 1 |
Сорри за оффтоп, но я посмеялся когда читал название темы...
Как преобразовать шестнадцатое выражение в десятое Блин, народ, выражайтесь яснее!! Я может с мобилы сижу и трачу драгоценный траффик на темы, название которых вводит в заблуждение! Это сообщение отредактировал(а) vbCrLf - 31.5.2006, 09:26 |
|||
|
||||
| XPurple |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 4.5.2006 Где: Челябинск Репутация: 1 Всего: 1 |
vbCrLf,
Заголовок короткий --------------------
Кто никогда ни о чем не спрашивает: тот либо знает все, либо не знает ничего. Не помню, кто сказал, может быть, я (с) |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| XPurple |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 4.5.2006 Где: Челябинск Репутация: 1 Всего: 1 |
Не получается отследить валидность вводимого текста ввиде код-H или код-в-десятичной-форме.
Задумка такая, чтобы вырезать в тексте любой символ включая спецсимволы. Причем видимый символ вырезается путем ввода символа, например 'A', а для спецсимволов предназначен ввод в виде 'ASCIIКод-символ H' или в виде 'число', обозначающее ASCII-код этого символа. Т.е. перевод каретки 0D будет вводиться в виде '0DH' или 'dh' или в числовом виде '13'. Так вот проблема такая, что при попытке ввода текста в виде '12H', 'A' , '1H', '123' - все нормально, при вводе текста ввиде 'GH' или 'ААА' - type mismatch. Подскажите, как проконтролировать валидность вводимых значений для функций Int и для преобразования 16-го числа в целочисленный вид ? Вот код программы
Это сообщение отредактировал(а) XPurple - 31.5.2006, 10:59 --------------------
Кто никогда ни о чем не спрашивает: тот либо знает все, либо не знает ничего. Не помню, кто сказал, может быть, я (с) |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 26 Всего: 49 |
а как отличить "А" от "АА"?
Что из этого строка а что представление числа? Алгоритм не ясен - как же объяснить его компьютеру? -------------------- Я желаю всем Счастья! |
|||
|
||||
| XPurple |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 4.5.2006 Где: Челябинск Репутация: 1 Всего: 1 |
Алгоритм прост, как яйцо:
Если вводится один символ, то подразумевается, что это видимый символ,т.е. если введен символ A , то считается, что вводится символ 'A' или (chr(65), чтобы было понятней) , если вводится просто 1 - означает число или символ 1 (chr(49) )т.д. Если вводится 2 или 3 символа, то вводимое значение определяется либо как decimal Ascii code [10-254], либо как Hex Ascii code, тогда последним вводимым символом будет символ "h" или "H" и полная вводимая строка будет выглядеть либо как '1h' либо '23h', что будет означать '0x1' или '0x23'. Где-то так. --------------------
Кто никогда ни о чем не спрашивает: тот либо знает все, либо не знает ничего. Не помню, кто сказал, может быть, я (с) |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 34 Всего: 454 |
Валидным полагается считать любую введенную последовательность символов, которая после удаления пробельных символов в начале и конце состоит только из символов, соответствующих шестнадцатиричным цифрам ([0-9][A-F][a-f]), возможно с одним из префиксов 0x (C-синтаксис), &H (Basic-синтаксис), $ или $H (Pascal-синтаксис), либо с суффиксом H (ASM-синтаксис). Возможны также шаблоны, соответствующие другим языкам. Проверить на соответствие шаблону несложно. При соответствии отрезать префиск-суффикс, довесить Basic-овское &H и использовать CLng - по-моему несложно... Так4 в чем собсно проблема? -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 3 Всего: 16 |
Чё-т я тоже нихрена не понял, я же дал тебе вначале функцию для преобразования HexToDec, что ещё?
|
|||
|
||||
| XPurple |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 4.5.2006 Где: Челябинск Репутация: 1 Всего: 1 |
BUGOR,
Код как код, ничего сумбурного в нем не вижу. Наоборот упростил интерфейс до минимума, сведя все к 1-ой форме. Насчет регулярных выражений -надо попробовать. Синтаксис для VB такой же ,что и везде? Для работы с регулярными выражениями требуется подключать дополнительные References? Проблема одна- пробелы в знаниях функций и методов. Спасибо за пинок в нужном направлении, стало намного понятней. Это сообщение отредактировал(а) XPurple - 1.6.2006, 05:50 --------------------
Кто никогда ни о чем не спрашивает: тот либо знает все, либо не знает ничего. Не помню, кто сказал, может быть, я (с) |
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 3 Всего: 16 |
Нужно подключить класс:
Project > References > MS VB Regular Expressions Пример использования поищи на форуме или в сети. Вот составил выражение, учитывает все условия, которые тебе нужны: ^(0x|\$|\$H|&H)?[0-9A-Fa-f]+(H|h)?$ |
|||
|
||||
| XPurple |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 4.5.2006 Где: Челябинск Репутация: 1 Всего: 1 |
BUGOR,
Благодарю за разъяснения. Сам бы я долго разбирался. --------------------
Кто никогда ни о чем не спрашивает: тот либо знает все, либо не знает ничего. Не помню, кто сказал, может быть, я (с) |
|||
|
||||
![]()
|
| Правила форума "VB6" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB6 | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |