связывание будет продолжаться, начинаясь опять
байт <cString1> связывается с первым байтом <cString2>, второй байт
<cString1> - со вторым байтом <cString2> и т.д.
. Если <cString2> короче, чем <cString1>, то по достижении конца
<cString2>, связывание будет продолжаться, начинаясь опять с ее
первого байта. Если <cString1> короче, чем <cString2>, то работа
функции прекращается по достижении конца <cString1>.
. Параметр <cString1> может быть передан по ссылке. При этом вызов
CSETREF(.T.), подавляющий возвращение функцией результата, позволяет
уменьшить потребности в рабочей памяти.
Примеры
. Для надежности кодирования пароль не должен быть короче исходной
строки:
? CHARXOR("Secret", "Password")
. При двойном вызове восстанавливается первоначальное значение:
? CHARXOR(CHARXOR("Secret", "Password"), "Password")
. Двойное кодирование:
? CHARXOR(CHARXOR("Secret", "Password"), "A12B44")
See Also: CHARAND()
CHARNOT()
CHAROR()
CRYPT()
CSETREF()
CHECKSUM()
Возвращает контрольную сумму задаваемой строки.
------------------------------------------------------------------------------
Синтаксис
CHECKSUM(<cString>) --> nCheckSum
Параметры
<cString> - символьный параметр, задающий обрабатываемую строку.
Возвращаемое значение
nCheckSum - числовое значение контрольной суммы для <cString>.
Описание
Функция вычисляет контрольную сумму для символьной строки. Эта
контрольная сумма позволяет, например, определить, была ли строка
изменена, неправильно передана или набрана. Функция учитывает позиции
символов, благодаря чему кратность определяемой с ее помощью ошибки
выше, чем при использовании функции ASCIISUM().