:: Visual Foxpro, Foxpro for DOS
Re: Удаление лишних пробелов
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
of63
Был перечень... бумажный. ТАК У ВАС ЖЕ ФРЕЙЙМВЕРК - это тот же список функций. и полный ли.
Почему был.

ralf brown interrupt list
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Это очень плохо, что ребяьа НИЧЕГО гн поимают
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Вам бы как-то трезветь надо, сударь.


А то вы сейчас не просто в хлам, а реально в говно
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
Igor Korolyov
(даже представления не имею с какими компиляторами будет совместим LCK).
Watcom C (идет в составе LCK) и MS C. Ассемблеры TASM и MASM.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Вот тоже про Ватком вспомнил
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Тасмовский асм уже давно сдулся, как и все борландовские поделки
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Если мне память не изменяет, то 586p - максимум что он мог компилировать
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
MASM душу греет.. к фоксу бы присобачить многострочные #дефины ( макросы, с параметрами, как функции, в процессе компиляции)

youtu.be - ализи
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
spinz
Вам бы как-то трезветь надо, сударь.
А то вы сейчас не просто в хлам, а реально в говно

Как вернуться-то, в строй, подскажи.
Доб. (Сам подначивал про 0.7. Вот тебе 0.7)
youtu.be - В.Паради



Исправлено 2 раз(а). Последнее : of63, 21.01.18 03:06
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Интересно, что ты не спишь, спинц )
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Так я уже работу работаю, идеально трезвый (нет)
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Собственно вот сама fll и тестирующая программа.
Собирал я её в Microsoft Visual C++ 2008 Express, посему там ссылки на сишный рантайм msvcr90.dll, кому надо, думаю, без проблем найдут установщик соответствующего рантайма
Исходник fll, конечно, прилагается.
Там я добавил второй вариант - штатный "возврат значения", т.к. один чёрт от лишних копирований строки не избавиться - скорость работу 2 вариантов совпадает (до точности сравнения. HPET я использовать не стал, и так всё видно).
Ну и на всякий случай скриншот с результатами:
[attachment 28858 reduce_test.png]

Архив с исходниками:
[attachment 28859 reduce_fll_test.zip]


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
А где студийный проектик?
Кстати, нашел оригинальный код reduce. Желающие посмотреть есть?
ps: свою plb нашел, а вот её исходник тю-тю за давностью лет...
pps: а вот и не тю-тю В неожиданном месте таки
всплыло:


------------------
Лень - это неосознанная мудрость.




Исправлено 1 раз(а). Последнее : ssa, 23.01.18 00:01
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
Simple777

Сообщений: 33855
Дата регистрации: 05.11.2006
Увы, но reduce.plb не работает. Вылетает по сообщению "недостаточно памяти" :al:
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
ssa
А где студийный проектик?
Согласен. Без поллитра всё настроить проблематично.
[attachment 28863 Reduce.vcproj.zip]


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
Simple777
Увы, но reduce.plb не работает. Вылетает по сообщению "недостаточно памяти" :al:
Даже в первый раз?
И по поводу Alltrim режима в Reduce. Вот заголовок оригинала:
//--------------------------------------------------------------------------
void far reduce(ParamBlk FAR *parm)
//--------------------------------------------------------------------------
//
// Reduce multiple white space characters to a single space and trims all
// leading and trailing white space
. If the optional second parameter
// is non-zero, quoted strings will be unaffected.
//
// Usage: reduce(string,[skipquotes])
//
// Returns: string
//
// Author: Walter J. Kennamer
// History: Initially written May 10, 1991
//--------------------------------------------------------------------------

Про второй параметр мало кто знает, но, вероятнее всего, обработка его и делает оригинальную функцию такой тормозной.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
Simple777

Сообщений: 33855
Дата регистрации: 05.11.2006
Я пробовал запускать эту функцию из командного окна FPD. Сообщение об ошибке появлялось при первом же вызове.
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Изначальна пробла то решается фоксовыми ф-иями в 3 строки... Шла 10я страница ассеблерных адептов ) В этом треде уже выпил раз 5...



Исправлено 1 раз(а). Последнее : of63, 23.01.18 23:08
Ratings: 0 negative/0 positive
Re: Удаление лишних пробелов
lulgu

Сообщений: 1838
Дата регистрации: 30.11.2016
of63
Изначальна пробла то решается фоксовыми ф-иями в 3 строки...

Чуть поболе:

* Удаление лишних пробелов
CLEAR
LOCAL tcString,lnSec,lcStr,i
RAND(-1)
lcStr = ''
FOR i=1 TO 400000
lcStr = lcStr + SPACE(INT(25*RAND()+1)) + REPLICATE('a',INT(25*RAND()+1))
ENDFOR
? LEN(lcStr)
?
IF .T.
tcString = lcStr
lnSec = SECONDS()
DO WHILE SPACE(2) $ tcString
tcString = STRTRAN(tcString,SPACE(2),SPACE(1))
ENDDO
tcString = ALLTRIM(tcString)
? SECONDS() - lnSec
? LEN(tcString)
ENDIF
IF .T.
tcString = lcStr
lnSec = SECONDS()
IF CHR(0) $ tcString
RETURN ''
ENDIF
tcString = ALLTRIM(STRTRAN(STRTRAN(STRTRAN(tcString,' ',' ' + CHR(0)),CHR(0) + ' ',''),CHR(0),''))
? SECONDS() - lnSec
? LEN(tcString)
ENDIF
IF .T.
LOCAL loRegExp
loRegExp = CREATEOBJECT('VBScript.RegExp')
tcString = lcStr
lnSec = SECONDS()
loRegExp.GLOBAL = .T.
loRegExp.MultiLine = .T.
loRegExp.PATTERN = ' +' && ' {2,}'
tcString = ALLTRIM(loRegExp.REPLACE(tcString,' '))
? SECONDS() - lnSec
? LEN(tcString)
ENDIF
Ratings: 0 negative/1 positive
Re: Удаление лишних пробелов
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Лулгу, ты много проверочных штучек написал?. ну зачем, кто их будет запускать и проверять. Много текста, Лулгу. Краткий анонс эксперимента не сделал... это я еще по пьяни тебе ответил, а так и не ответят(им). Даже он монстров проверок, _vit, leonid, spinz - ну что ты выразишь вкрадце, чтобы хоть кто-то посмотрел на твои труды. Я без прикола, просто. посмотри на свои результаты экспериментов, и их предвесники, здраво. Эти ребято тоже не безгрешны, но они "гуру", и чтобы с ними соревноваться, нужно точно быть уверенным, и знать их возможные вопросы, вот так )

youtu.be - вот так примерно ) Кино, Следи за собой )



Исправлено 1 раз(а). Последнее : of63, 24.01.18 00:28
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 26 (Гостей: 26)

© 2000-2024 Fox Club 
Яндекс.Метрика