CSTRING (строка фиксированной длины, завершающаяся нулем)
| метка СSTRING( |
length
string constant
picture |
)[,DIM()][,OVER()][,NAME()] [,EXTERNAL] |
| Формат: |
Фиксированное число
байт. |
| Диапазон: |
От 1 до 65,535 байт |
| length |
Числовая константа,
которая задает размер
строки в байтах. При
использовании этого
параметра,строка
инициализируется
пробелами. |
| string constant |
Начальное значение строки. Длина СSTRING-a устанавливается (в байтах) по длине этой строковой константы плюс завершающий нулевой символ. |
| picture |
Используется для форматирования значений, присвоенных строке. Длина такой строки, это количество байт, достаточное для хранения форматированной строки и завершающего нулевого символа. Строка инициализируется пробелами. |
| DIM |
Размерность(и)
переменной как массива. |
| OVER | Разделяет один и тот же участок памяти с другой переменной |
| NAME | Задает внешнее имя для переменной. |
| EXTERNAL |
Указывает, что переменная описана и память под нее выделяется во внешней библиотеке. НЕ разрешено для описаний FILE, QUEUE и GROUP. |
CSTRING описывает символьную строку, завершающуюся нулевым символом (ASCII NULL). Она соответствует строкам, используемым в языке C и типу данных "ZSTRING" в Btrieve Record Manager. Под CSTRING в памяти выделяется участок постоянной длины, при этом, завершающий нулевой символ помещается в конец введенных данных. CSTRING во время исполнения преобразовывается в промежуточный тип STRING. Тип CSTRING имеет смысл употреблять для совместимости с внешними файлами и/или процедурами.
Пример:
Name CSTRING(21) !Declare 21 byte field - 20 bytes data
OtherName CSTRING(21),OVER(Name) !Declare field over name field
Contact CSTRING(21),DIM(4) !Array 21 byte fields - 80
! bytes data Company
Company CSTRING('Clarion Software, Inc.') !23 byte string 22
! bytes data
Phone CSTRING(@P(###)###-####p) !Declare 14 bytes 13 bytes
! data
ExampleFile FILE,DRIVER('Btrieve') !Declare a file
Record RECORD
NameField CSTRING(21),NAME('ZstringField')
!Declare with external name
. .