Cтраница 1
Имена старших структур ( все или некоторые из них) в квалифицированных именах могут быть опущены, если это не приведет к двусмысленности, то есть, если в данном блоке не известны другие величины с именами, совпадающими с именами элементов структур. [1]
Напомним, что имена старшей структуры и подструктур не имеют атрибутов. [2]
![]() |
Строение перфокарты о - при повременной оплате труда, б - при сдельной оплате труда. [3] |
Если соответствующий атрибут указан для имени старшей структуры или имени массива, то он относится и ко всем их элементам. Для элементов типа строка битов атрибут ALIGNED должен указываться явно. [4]
Любое имя структуры, за исключением имени старшей структуры, можно уточнить, поставив перед ним имя структуры или подструктуры, к которой данная структура принадлежит. Справа ставится имя с самым большим номером уровня, слева - с самым маленьким номером. Уточнять имя структуры требуется до тех пор, пока оно не станет единственным. В уточняющем имени имена различных уровней отделяются друг от друга точкой, а между точкой и именем может стоять пробел. [5]
Если атрибут ALIGNED ( или UNALIGNED) указан для имени старшей структуры, то действие его относится ко всем элементам структуры, кроме тех, для которых он объявлен явно. [6]
Следует отметить, что при записи оператора DECLARE для структуры имя старшей структуры указывается на первом месте, за ним следуют подструктуры и имена элементов структуры о атрибутами. Перед каждым именем стоит целая десятичная константа, которая называется номером уровня. Она отделяется как минимум одним пробелом от следующего за ней имени-переменной. [7]
Следует отметить, что при записи оператора DECLARE для структуры имя старшей структуры указывается на первом месте, за ним следуют подструктуры и имена элементов структуры с атрибутами. [8]
Если в программе необходимо обратиться ко всей структуре, подструктуре или элементу структуры, то используют имя старшей структуры, подструктуры или элемента структуры соответственно. [9]
В Subset-PL / I допускается использование составных имен, однако во все записи составных имен следует включать имя старшей структуры. [10]
Структура как совокупность данных может участвовать в операциях пересылки и некоторых операциях обработки. Любая ссылка к имени старшей структуры равносильна обращению ко всем ее элементам. Например, если в операторе вывода будет указано имя COLUMN, то будут выведены значения всех ее элементов. Часто бывает необходимо обратиться к подструктуре или элементу структуры. В этом случае нужно использовать соответственно имя подструктуры или элемента структуры. Например, по имени TECHNOL происходит обращение ко всем элементам этой подструктуры ( PRESURE, FEED... [11]
Под выражением над структурами понимается выражение, которое содержит в качестве хотя бы одного операнда структуру. Этим операндом может быть как имя старшей структуры, так и имя подструктуры. Результатом вычисления выражения над структурами является структура. В качестве операндов в выражении над структурами могут также использоваться константы и скалярные переменные. [12]
Атрибут распределения памяти - ALIGNED или UNALIGNED определяет способ распределения в памяти элементов структуры. Эти атрибуты могут быть указаны только для имен старших структур. Они позволяют либо ускорить обращение к отдельным элементам структуры, либо сэкономить память машины для их размещения. [13]
Имя файла, указанное в режиме FILE при создании набора данных, должно быть описано с атрибутом OUTPUT и методом доступа SEQUENTIAL. Имя, указанное в режиме FROM, должно быть именем простой переменной, именем массива или именем старшей структуры. Запрещены имена параметров или переменных g атрибутом DEFINED. Это имя определяет область основной памяти, которая содержит запись создаваемого набора. [14]
Если вычисляется выражение со структурами, имеющими различное строение, то используется режим BY NAME. В этом случае будут выполняться действия над элементами тех структур, которые будут иметь одинаковые уточненные имена, кроме имен старших структур. [15]