Определение структуры описанием полей

 

Define Struct(i): {Name1$ =} Type {,Size} {,{Name1$ =} Type {,Size}}

 

где:

  • i – идентификационный номер структуры 0 < i < 32768;
  • Name$ – имя поля – строковая константа или переменная; если не указано, то в дальнейшем идентификатор поля – название типа;
  • Type – тип поля; допустимые типы:
  • REAL
  • INTEGER
  • STRING {size}
  • POINT
  • LINE
  • CIRCLE
  • KONTUR
  • SET

 

Параметр size для типа STRING – длина строки; 0 < size < 256. По умолчанию size – 255;

Size – размер массива; 0 < Size < 65536. По умолчанию Size – 1.

 

Для поля типа SET установлены следующие ограничения:

  • возможно задание только одного поля типа SET в структуре;
  • нельзя определить массив множеств;
  • для поля типа SET не используется символьный идентификатор, а обращение идет по ключевому слову SET;
  • общее количество определенных множеств во всех структурах не должно превышать 32767.

 

Пример:

 

Define Struct(1):

  "FieldR" = REAL, 10,

  INTEGER,

  POINT,

  "str" = string 10

 

Структура 1 имеет четыре поля: "FieldR", INTEGER, POINT, "str". Первое и последнее поля идентифицируются по имени, остальные – по типу.

Поле "FieldR" – массив из десяти действительных чисел с номерами от 1 до 10.

 

Подсистема SETS