Cвалка basic компиляторов

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 15:59

Кстати вопрос на засыпку. Кто нибудь может написать функцию удаления текстовых комментариев комментариев из BASIC кода:

Допустим есть такой код
Код: Выделить всё
'Коммент1
Msgbox "Hello!" rem коммент2
rem коммент3


нужно удалить из него все комменты. Мне просто интересно, совсем у меня голова отупела или нет :D

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 16:04

Перенос строки (символ подчёркивания) в этом BASIC-е будет?
На чём написать функцию?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 16:05

Хакер писал(а):Перенос строки (символ подчёркивания) в это BASIC-е будет?
На чём написать функцию?


Переноса строки нет.
На VB или PB, мне просто интересен подход к решению этой задачи. Сколько их вообще может быть. Какой самый эффективный.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 16:10

jangle писал(а):На VB или PB, мне просто интересен подход к решению этой задачи. Сколько их вообще может быть. Какой самый эффективный.

Это зависит от контекста задачи. Если это просто крохотная утилита, то решение одно. Если бы это нужно было в рамках какой-то большой программы, в которой нужны какие-то ещи процессинги кода, то логично, что и вырезатель комментариев, и код, выполняющий другие обработки — полагались бы на общую функциональную базу.

А код твой непонятен. Это VB или не VB. Судя по MsgBox-у — VB. Судя по тому, что после MsgBox "Hello!" стоит Rem — это не VB (в VB такое не разрешено). Если это не VB, то нельзя писать код, вырезающий комментарий, пока не станут ясны синтаксические особенности языка.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: Cвалка basic компиляторов

Сообщение FireFenix » 07.07.2011 (Чт) 16:15

jangle писал(а):Кстати вопрос на засыпку. Кто нибудь может написать функцию удаления текстовых комментариев комментариев из BASIC кода

Регуляркой, от ' до vbCrLf и от rem до vbCrLf? :)
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 16:18

Хакер писал(а):Это зависит от контекста задачи. Если это просто крохотная утилита, то решение одно. Если бы это нужно было в рамках какой-то большой программы, в которой нужны какие-то ещи процессинги кода, то логично, что и вырезатель комментариев, и код, выполняющий другие обработки — полагались бы на общую функциональную базу.


Хотя бы просто функцию на VB

А код твой непонятен. Это VB или не VB. Судя по MsgBox-у — VB. Судя по тому, что после MsgBox "Hello!" стоит Rem — это не VB (в VB такое не разрешено). Если это не VB, то нельзя писать код, вырезающий комментарий, пока не станут ясны синтаксические особенности языка.


Да это код PB, там два типа комментов: ' и Rem

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 16:19

FireFenix писал(а):
jangle писал(а):Кстати вопрос на засыпку. Кто нибудь может написать функцию удаления текстовых комментариев комментариев из BASIC кода

Регуляркой, от ' до vbCrLf и от rem до vbCrLf? :)


Неправильно. Сам подумай почему. :)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 16:20

FireFenix писал(а):Регуляркой, от ' до vbCrLf и от rem до vbCrLf? :)

О, дотнетчик пришёл :)

Пожалуйста, регуляркой:
Код: Выделить всё
Было:
MsgBox "Не могу найти 'abc' в репозитории" ' Сообщили об ошибке
Стало:
MsgBox "Не могу найти


Да это код PB, там два типа комментов: ' и Rem

В VB тоже есть Rem, но он может быть только в начале строки, в отличие от апострофа.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 16:25

Хакер писал(а):
FireFenix писал(а):Регуляркой, от ' до vbCrLf и от rem до vbCrLf? :)

О, дотнетчик пришёл :)

Пожалуйста, регуляркой:
Код: Выделить всё
Было:
MsgBox "Не могу найти 'abc' в репозитории" ' Сообщили об ошибке
Стало:
MsgBox "Не могу найти



Все правильно. Потому как комменты могут быть в кавычках: MsgBox " rem ' "
Нужно парсить код. У меня получилось с двумя циклами, некрасиво, но работает.
Интересно есть ли другие алгоритмы.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 16:29

jangle писал(а):Нужно парсить код. У меня получилось с двумя циклами, некрасиво, но работает.
Интересно есть ли другие алгоритмы.

Есть. Вернее, алгоритмы те же, просто внешний вид другой.

Выглядит так:
Код: Выделить всё
for(func_ptr = start_function; func_ptr != 0; func_ptr = func_ptr(some_context));
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 16:33

Хакер писал(а):Выглядит так:
Код: Выделить всё
for(func_ptr = start_function; func_ptr != 0; func_ptr = func_ptr(some_context));


Чето я не пойму как это работает. Можешь на VB функцию написать? У меня на PB самый тупой, на работающий в 100% случаев вариант выглядит так:

Код: Выделить всё
'/****************************************************************
'/ Удаление комментариев из кода
Function DelComment (ByVal PB_SOURCE As String) As String

   Dim PB_Source_Arr(1 To ParseCount(PB_SOURCE, Any Chr$(10) )) As String
   Parse PB_SOURCE, PB_Source_Arr(), Any  Chr$(10)

   Dim metka As Long 'метка кавычек
   Dim i As Long 'счетчик строк
   Dim t As Long
   Dim arr_count1 As Long
   Dim out_txt As String

   '/удаление комментов в начале строк
   For i=1 To UBound(PB_Source_Arr)
        If Mid$(Trim$(PB_Source_Arr(i)),1,1)="'" Then
            PB_Source_Arr(i)=" "
        End If
        If Mid$(LCase$(Trim$(PB_Source_Arr(i))),1,3)="rem" Then
             PB_Source_Arr(i)=" "
        End If
   Next i

   '-----------------------------------------------------
   For i=1 To UBound(PB_Source_Arr)
       For t=1 To Len(PB_Source_Arr(i))
          If Mid$(PB_Source_Arr(i),t,1)=Chr$(34) Then  'устанавливаем метку если коммент в кавычках " '  "
              If metka=0 Then
                  metka=1
                Else
                  metka=0
                 End If
           End If

           If Mid$(PB_Source_Arr(i),t,1)="'"  Then
              If  metka=0 Then
                   PB_Source_Arr(i)=Mid$( PB_Source_Arr(i), 1, t-1) & $CrLf
                End If
           End If
       Next t
   Next i

   For i=1 To UBound(PB_Source_Arr)
       For t=1 To Len(PB_Source_Arr(i))
            If Mid$(PB_Source_Arr(i),t,1)=Chr$(34) Then     'устанавливаем метку если коммент в кавычках " rem  "
              If metka=0 Then
                  metka=1
                Else
                  metka=0
                 End If
           End If

           If Mid$(LCase$(Trim$(PB_Source_Arr(i))),t,3)="rem"  Then
              If  metka=0 Then
                   PB_Source_Arr(i)=Mid$( PB_Source_Arr(i), 1, t-1)   & $CrLf
               End If
           End If
       Next t
   Next i

  For i=1 To UBound(PB_Source_Arr)
      out_txt=out_txt & PB_Source_Arr(i)
  Next i

  Function= out_txt

End Function
'/****************************************************************

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 16:38

jangle писал(а):Чето я не пойму как это работает. Можешь на VB функцию написать?

Работает это так: вызывается функция, которая кое-что делает, а кроме того, решает, какая функция будет вызвана следующей. Адрес этой функции она возвращает. Эта (адрес которой возвращён) функция тоже что-то делает, и тоже решает, чего вызывать дальше. И тоже возвращает, и тоже дальше кто-то вызывается, и так до тех пор, пока какая-нибудь функция не решит, что дальше вызывать уже никого не надо, и не вернёт 0.

Ну в VB нет указателей на функции. Это можно сделать с классами:
Класс CRouter с методом Public Route(ctx as CTX) As CRouter

Код: Выделить всё
Dim R as CRouter
Set R = StartRouter

Do
    Set R = R.Route(some_context)
Loop Until R Is Nothing
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: Cвалка basic компиляторов

Сообщение FireFenix » 07.07.2011 (Чт) 16:45

Хакер писал(а):Пожалуйста, регуляркой:
Код: Выделить всё
Было:
MsgBox "Не могу найти 'abc' в репозитории" ' Сообщили об ошибке
Стало:
MsgBox "Не могу найти

не подумал +)

Тогда построчно, делаем поиск с конца строки, кавычки и двойной кавчки, если Pos двойной кавычки меньше одинарной, то считаем одинарную как комент и удаляем :)
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 16:49

FireFenix писал(а):Тогда построчно, делаем поиск с конца строки, кавычки и двойной кавчки, если Pos двойной кавычки меньше одинарной, то считаем одинарную как комент и удаляем :)



Код: Выделить всё
Msgbox " A ' B "" C "" D ' E ", F, "G" ', H ' I " J ' "" K ' " '


Обрабатай, пожалуйста. Если будешь искать с конца строки, получешь плохой результат. Будешь сначала строки искать — получишь плохой результат.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 16:51

FireFenix писал(а):
Хакер писал(а):Пожалуйста, регуляркой:
Код: Выделить всё
Было:
MsgBox "Не могу найти 'abc' в репозитории" ' Сообщили об ошибке
Стало:
MsgBox "Не могу найти

не подумал +)

Тогда построчно, делаем поиск с конца строки, кавычки и двойной кавчки, если Pos двойной кавычки меньше одинарной, то считаем одинарную как комент и удаляем :)


Код: Выделить всё
' А тут все обломится "хе хе "
rem ' А тут все обломится "хе хе "

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 16:57

Код: Выделить всё
Msgbox " A ' B "" C "" D ' E ", F, "G" ', H ' I " J ' "" K ' " '


Мой код обрабатывает этот пример правильно:

Код: Выделить всё
MsgBox " A ' B "" C "" D ' E ", F, "G"


Иногда самый тупой вариант лучше других :D

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 17:19

Дело в том, что у PB простой синтаксис, по сравнению с VB.

Как только FireFenix (а я надеюсь, он не бросит) придумает вариант (не важно, с регулярным ли выражением или с InStr), который справится с выложенным комментарием, я дам следующий легальный в рамках VB код, на котором его пример, надо полагать, обломается.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 17:25

Хакер писал(а):Дело в том, что у PB простой синтаксис, по сравнению с VB.


Так комменты в обоих случаях почти одинаковые, и способ удаления их тоже.
А вообще этот вопрос, не столь элементарный, как кажется на первый взгляд.
В любом случае придется писать "честный парсер", и всякие упрощения типа регулярных выражений не прокатят.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 17:38

jangle писал(а):Так комменты в обоих случаях почти одинаковые, и способ удаления их тоже.

В PB нет переноса строки с помощью подчёркивания. В VB оно есть. Твой код на это не расчитан.
Плюс есть ещё один момент касательно комментариев. Есть случай, когда апостроф не внутри строки, но и не начинает комментарий. Я думаю твой код на этом сфейлит.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Cвалка basic компиляторов

Сообщение Diamock » 07.07.2011 (Чт) 17:46

Из всего вышесказанного, я сделал следующий вывод: Си-подобный - это не главное. Важен сам принцип создания РАБОТАЮЩЕГО компилятора. Синтаксис может быть и таким
Код: Выделить всё
Если А > B То
С = А + В

Что самое интересное в созданном на VB компиляторе, будет ли приложение зависеть от msvbvm?
Если нет, то каждый с прямыми руками и прямым мозгом, при определённом трудолюбии сможет создать свой компилятор под практически любую платформу :D .
In der Beschrankung zeigt sich erst der Meister
Графоманю...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 17:52

Diamock писал(а):Из всего вышесказанного, я сделал следующий вывод: Си-подобный - это не главное. Важен сам принцип создания РАБОТАЮЩЕГО компилятора. Синтаксис может быть и таким

Вообще-то Си имеет максимальную мощность при минимальной сложности языка. Его синтаксис шедеврален, как и концепция, поэтому именно его компилятор писать интересно.

Diamock писал(а):Что самое интересное в созданном на VB компиляторе, будет ли приложение зависеть от msvbvm?

Компилятор не создаёт приложения, компилятор создаёт obj-файл в формате COFF. Но если со скидкой на новичковую неразборчивость, то априори такой зависимости не будет.

Diamock писал(а):Если нет, то каждый с прямыми руками и прямым мозгом, при определённом трудолюбии сможет создать свой компилятор под практически любую платформу :D

Вообще то, каждый такой может сделать это и без моей потенциально-будущей поделки. И тот, у кого хватит прямоты рук на это, предпочтёт сделать всё с нуля, чем приделывать поддержку новой аппаратной платформы к демо-компилятору.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Cвалка basic компиляторов

Сообщение ger_kar » 07.07.2011 (Чт) 18:13

Хакер писал(а):Я не хочу участвовать в приближении этого ужасного будущего.

Я тоже его боюсь, ибо все мобильное меня жутко раздражает и пугает :x и здесь я солидарен с Хакером.
Хакер писал(а):Это будущее уже наступило. По крайней мере в развитых уголках планеты.
В том уголке, где я живу оно - это "ужасное завтра" пока еще не наступило, но неумолимо наступает на пятки и прямо таки дышит в затылок :)
Бороться и искать, найти и перепрятать

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: Cвалка basic компиляторов

Сообщение FireFenix » 07.07.2011 (Чт) 19:06

Хакер писал(а):
FireFenix писал(а):Тогда построчно, делаем поиск с конца строки, кавычки и двойной кавчки, если Pos двойной кавычки меньше одинарной, то считаем одинарную как комент и удаляем :)



Код: Выделить всё
Msgbox " A ' B "" C "" D ' E ", F, "G" ', H ' I " J ' "" K ' " '


Обрабатай, пожалуйста. Если будешь искать с конца строки, получешь плохой результат. Будешь сначала строки искать — получишь плохой результат.

Мир жесток :(

Хакер писал(а):Как только FireFenix придумает вариант

Проверяем чётность двойных кавычек, с последней чётной кавычки ищем одинарную и от неё обрезаем
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 19:08

FireFenix писал(а):Проверяем чётность двойных кавычек, с последней чётной кавычки ищем одинарную и от неё обрезаем


Пожалуйста, регэкспом или кодом на каком-нибудь абстрактном (или не очень) языке. И да, докуда обрезаем?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 07.07.2011 (Чт) 19:17

jangle писал(а):Кстати вопрос на засыпку. Кто нибудь может написать функцию удаления текстовых комментариев комментариев из BASIC кода

Я бы сделал так:
Код: Выделить всё
Public Function RemoveComments(ByVal Text() As String) As String()
  If Text.Length = 0 Then Return New String() {}

  Dim InString As Boolean, InName As Boolean
  Dim Line As String
  Dim Result(Text.Length - 1) As String
  Dim Q As Integer, W As Integer

  For Q = 0 To Text.Length - 1
    Line = Text(Q)
    InString = False
    InName = False

    For W = 0 To Line.Length - 1
      Select Case Char.ToLower(Line(W))
        Case """"c
          InString = Not InString
        Case "["c
          If Not InString Then InName = True
        Case "]"c
          If Not InString Then InName = False
        Case "'"c
          If Not InString Then
            Line = Line.Substring(0, W)
            Exit For
          End If
        Case "r"c
          If Not InString AndAlso Not InName _
             AndAlso W + 2 < Line.Length AndAlso Char.ToLower(Line(W + 1)) = "e"c AndAlso Char.ToLower(Line(W + 2)) = "m"c _
             AndAlso (W = 0 OrElse Not Char.IsLetterOrDigit(Line(W - 1))) _
             AndAlso (W + 3 = Line.Length OrElse Not Char.IsLetterOrDigit(Line(W + 3))) _
          Then
            Line = Line.Substring(0, W)
            Exit For
          End If
      End Select
    Next W

    Result(Q) = Line
  Next Q

  Return Result
End Function

Хакер писал(а):Судя по тому, что после MsgBox "Hello!" стоит Rem — это не VB (в VB такое не разрешено).

VS2010 с Вами не согласна :D

Comment Remover.png
Проверка

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: Cвалка basic компиляторов

Сообщение jangle » 07.07.2011 (Чт) 19:27

Хакер писал(а):В PB нет переноса строки с помощью подчёркивания. В VB оно есть. Твой код на это не расчитан."


В PB перенос строки есть. Моему коду до этого нет дела. Поскольку он анализирует исходник побайтово и реагирует на каждое появление Chr$(34)
во входном потоке, то работает во всех случаях использования комментариев.

Плюс есть ещё один момент касательно комментариев. Есть случай, когда апостроф не внутри строки, но и не начинает комментарий. Я думаю твой код на этом сфейлит.


Что значит апостроф не внутри строки?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Cвалка basic компиляторов

Сообщение Хакер » 07.07.2011 (Чт) 19:29

Qwertiy писал(а):VS2010 с Вами не согласна :D

Нашёл, блин, что привести в качестве примера. Мне фиолетово, что думает VS2010, потому что последняя версия VB — VB6. И студии для VB7+ внутри настолько далеки по техническому совершенству от среды VB/VBA, что даже те, кому дотнет нравится, подмечают, что студия очень тормозит.

jangle писал(а):Что значит апостроф не внутри строки?

Значит как часть строковой константы, в которой он играет роль обычного символа.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re:

Сообщение jangle » 07.07.2011 (Чт) 19:32

Qwertiy писал(а):Я бы сделал так:[code]Public Function RemoveComments(ByVal Text() As String) As String()


Выложи скомпилированный бинарник, у меня нет VS2010

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 07.07.2011 (Чт) 19:34

Хакер писал(а):Нашёл, блин, что привести в качестве примера. Мне фиолетово, что думает VS2010, потому что последняя версия VB — VB6.

Take it to Microsoft :)

Хакер писал(а):Значит как часть строковой константы, в которой он играет роль обычного символа.

Пример можно?

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 07.07.2011 (Чт) 19:38

jangle писал(а):Выложи скомпилированный бинарник, у меня нет VS2010

Test Апостроф.7z
Надеюсь, .NET Framework 4 есть?
(6.42 Кб) Скачиваний: 91

PS: Почему exe во вложениях запрещены?

Пред.След.

Вернуться в Народный треп

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

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

    TopList