Клиппер 5. Справочник

Меняет местами соседние двухбайтовые слова


    ? WORDREPL("aa", "laaaa", "ba")             // "labaa"
    ? WORDREPL("aa", "laaaa", "ba", .T.)        // "lbaba"
 
  . CSETATMUPA() действует только при значении .Т. параметра
    <lMode>:
 
    CSETATMUPA(.T.)                             // Включение режима прохода
                                                // по символам
    ? WORDREPL("aa", "laaaa", "ba")             // "labaa"
    ? WORDREPL("aa", "laaaa", "ba", .T.)        // "lbbba"
 

See Also: CHARREPL()
CSETATMUPA()


CSETREF()

 

 

 WORDSWAP()
  Меняет местами соседние двухбайтовые слова в строке.
------------------------------------------------------------------------------
 
  Синтаксис
 
    WORDSWAP([@]<cString>, [<lMode>]) --> cSwapString
 
  Параметры
 
    [@]<cString> - символьный параметр, допускающий передачу по ссылке и
    задающий строку, внутри которой заменяются двухбайтовые подстроки
    (слова).
 
    <lMode> - необязательный логический параметр, задающий при значении
    .T. дополнительную перестановку смежных байтов в паре, а при значении
    .F. или по умолчанию дополнительная перестановка не производится.
 
  Возвращаемое значение
 
    cSwapString - модифицированная строка <cString>.
 
  Описание
 
    Функция, аналогично CHARSWAP(), меняет местами соседние двухбайтовые
    подстроки (16-битовые слова) в символьной строке.
 
    Благодаря функции можно работать со строками, содержащими 32-битовые
    целые, возвращаемые Clipper-функцией L2BIN(). Перестановка
    подготавливает сортировку целых чисел в этой форме, производимую
    функцией CHARSORT(). Однако для получения правильных результатов
    дополнительно к перестановке 16-битовых слов необходимо поменять
    местами и байты в слове (младший/старший байт 16-битовых целых).

Содержание раздела