Language.Status=Esoteric

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Cryonyx
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 292
Зарегистрирован: 12.11.2004 (Пт) 15:40
Откуда: Net_SubStream

Language.Status=Esoteric

Сообщение Cryonyx » 08.04.2005 (Пт) 14:42

Всем здрям!
Тут один вопросик появился.
Читал я один из последних номеров "КТ" и наткнулся на интересную статью про эзотерические языки. Ну, думаю, а почему б не попробовать самому такой сделать?
Надыбал в нете сорс Ауры - вроде ничего сложного, но трабл в том, что он на сях. А в сях есть указатели, а в ВБ нету (или я не знаю о них :?: :D ).

Собственно, сабж:
1. Кто-нибудь знает, как в басике реализовать аналог сишных указателей?
2. Может, у кого-нить есть исходник, который может реализовать, скажем, следующий код:
Код: Выделить всё
Dim X as Single
Dim Y as String

S = "y='stroka'~x=518.32"
Call Raspoznat(S)

' Теперь у этих переменных значения:
' X = 518.32
' Y = "stroka"


Т.е., суть в том, чтобы из строки выдернуть значения параметров и присвоить соответствующим переменным (ну, по аналогии с 3D-Grapher). Фишка в том, что в том же яваскрипте есть функ eval, который это всё без проблем сделает, а насчёт ВБ не знаю...
Если тебе не по сердцу мой путь,
Выбери сам или выбери с кем,
А мне по барабану вся эта муть -
Я не червонец, чтобы нравиться всем!
© К.Кинчев
--
Мой блог: щёлкай сюда

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 08.04.2005 (Пт) 15:40

Код: Выделить всё
LongValue=VAL(stroka)

Cryonyx
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 292
Зарегистрирован: 12.11.2004 (Пт) 15:40
Откуда: Net_SubStream

Сообщение Cryonyx » 08.04.2005 (Пт) 22:21

Ну, так ты только число получишь, и то, стоящее до первого нечислового символа.
З.Ы. Да и необязательно именно длинный указывать, можно и просто целый.
Если тебе не по сердцу мой путь,
Выбери сам или выбери с кем,
А мне по барабану вся эта муть -
Я не червонец, чтобы нравиться всем!
© К.Кинчев
--
Мой блог: щёлкай сюда

Q2W
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 745
Зарегистрирован: 31.01.2004 (Сб) 20:46
Откуда: Питер

Сообщение Q2W » 09.04.2005 (Сб) 10:12

Тебе нужно отпарсить строку?
Если ты знаешь заранее какие типы у твоих переменных во входной строке, тогда так:

берёшь исходную строку и рубишь на куски.
Т.е. в цикле ходишь по строке и если ты нашёл символ "~", всё, что было до текущёго символа и после последней тильды кладёшь в спец переменную.

Дальше разбираем эту спец.переменную. Точно также ищеш знак "=" и всё, что было до текущего символа - это имя переменной, после - значение.
Я знаю верный путь

Cryonyx
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 292
Зарегистрирован: 12.11.2004 (Пт) 15:40
Откуда: Net_SubStream

Сообщение Cryonyx » 09.04.2005 (Сб) 18:45

OK, попробую обязательно. А нет такого встроенного спецфунка, который преобразовывал бы строковый эквивалент функции в реальную функцию?
Если тебе не по сердцу мой путь,
Выбери сам или выбери с кем,
А мне по барабану вся эта муть -
Я не червонец, чтобы нравиться всем!
© К.Кинчев
--
Мой блог: щёлкай сюда


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot, Yandex-бот и гости: 30

    TopList  
cron