Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Климов. Лекции / Алг_яз_Лекция_21.pptx
Скачиваний:
21
Добавлен:
14.05.2015
Размер:
1.21 Mб
Скачать

'UNLCK'

'LОСK'

'NBLCK'

не закрывать заданную область.

закрыть заданную область.

неблокированное закрытие.

Закрывает заданную область

Если она уже закрыта другим процессом, дает ошибку.

Действует по умолчанию.

ОПЕРАТОР LOCKING: Допустимые значения режима 61

‘RLCK'

‘NBRLCK'

закрыть по чтению.

То же, что и LОСK кроме закрытия

доступа для записи.

неблокированное

закрытие

по

чтению.

 

 

Тоже, что и NBLCK кроме закрытия доступа для записи.

ОПЕРАТОР LOCKING: Допустимые значения режима 62

ОПЕРАТОР LOCKING

63

ОПЕРАТОР LOCKING

64

Если не определены ни метка­

обработки­ошибки, ни состояние, то ошибка ввода/вывода переходит в

ошибку исполнения!!!

65

Оператор INQUIRE.

Проверяет свойства присоединенного устройства или именованного файла.

Синтаксис:

INQUIRE

или

INQUIRE

(UNIT= определитель-устройства, список_описателей/назначений)

(FILE=имя-файла, список_описателей/назначений)

ОПЕРАТОР INQUIRE

66

Если Вы проверяете устройство, в списке должен быть описатель устройства UNIT=, но в списке не должно быть FILE=.

Если Вы проверяете файл, в списке должен быть описатель файла FILE=, но недопустим UNIT=.

67

ОПЕРАТОР INQUIRE

68

ОПЕРАТОР INQUIRE

69

список

 

 

описателей/н

 

 

азначений

[,ERR= метка]

 

 

[,EXIST= логическое-существует]

 

 

[,NАMED= логическое-поименовано]

 

 

[,IOSTAT= целое-проверка-выхода]

 

 

[,OPENED= логическое-открыто]

 

 

[,NUMBER= целое-что-соединено]

 

 

[,NАME= имя-файла-соединения]

 

 

[,АССESS= имя-типа-доступа]

 

 

[,SEQUENTIАL= имя-последовательного]

 

 

[,DIRЕСT= имя-прямого]

 

 

[,FORM= имя-формата]

 

 

[,FORMАTTED= имя-форматированного]

 

 

[,UNFORMАTTED= имя-неформатированного]

 

 

[,RЕСL= целое-длина]

 

 

[,NEXTRЕС= целое-номер-следующее]

 

 

[,BLАNC= имя-пробела]

 

 

[,SHАRE= имя-состояния-совместного-доступа]

 

[,MODE= имя-типа-работы]

 

 

ОПЕРАТОР INQUIRE

70

ERR= метка

Метка выполняемого оператора, который в выполняемой программе соответствует описателю реакции на ошибку.

Если происходит ошибка управление будет передано на эту метку.

EXIST= логическое-существует

Логическая переменная или элемент логического массива.

Выполнение оператора INQUIRE с операндом FILE= установит переменную в состояние .TRUE., если указанный файл существует, или в состояние .FАLSE. если указанного файла нет.

Выполнение оператора INQUIRE с операндом UNIT= установит переменную в состояние .TRUE. если указанное устройство есть или в состояние .FАLSE. в противном случае.

ОПЕРАТОР INQUIRE : список описателей/назначений 71

NАMED= логическое-поименовано

Логическая переменная или элемент логического массива.

Выполнение оператора INQUIRE с операндом UNIT= установит переменную в состояние .TRUE. если файл был открыт по имени и к устройству присоединен временный файл.

IOSTAT= целое-проверка-выхода

целое или элемент целого массива, которое становится определенным, как:

a)ноль, если не было ошибок или не встретились условия конца файла;

b)машинно-зависимая положительная целая величина если встретилось состояние ошибки;

c)машинно-зависимая отрицательная целая величина если ошибки не было и встретился конец файла.

ОПЕРАТОР INQUIRE : список описателей/назначений 72

OPENED= логическое-открыто

Логическая переменная или элемент логического массива.

В проверке по файлу устанавливается .TRUE., если именованный

файл в текущий момент соединен с любым устройством, в противном случае устанавливается .FАLSE.

В проверке по устройству устанавливается .TRUE., если для

данного устройства открыт любой файл, в противном случае устанавливается .FАLSE.

NUMBER= целое-что-соединено

Целая переменная или элемент целого массива.

Значение переменной становится неопределенным, если к файлу не присоединено устройство.

Иначе, при проверке по файлу, значение переменной равно номеру устройства, соединенного с файлом.

ОПЕРАТОР INQUIRE : список описателей/назначений 73

NАME= имя-файла-соединения

Символьная переменная или элемент символьного массива.

При проверке устройства в нее засылается имя файла.

Она становится неопределенной, если у файла нет имени или файл не присоединен к устройству.

АССESS= имя-типа-доступа

Символьная переменная или элемент символьного массива.

Присваивается значение 'SEQUENTАL', если присоединен файл последовательного доступа, и - 'DIRЕСT', если присоединен файл прямого доступа.

Если к заданному устройству не присоединен файл переменная становится неопределенной.

ОПЕРАТОР INQUIRE : список описателей/назначений 74

SEQUENTIАL= имя-последовательного

Символьная переменная или элемент символьного массива.

Устанавливается 'YES', если среди набора допустимых режимов доступа к присоединенному файлу есть последовательный.

В противном случае - 'NO' или 'UNKNOWN'.

DIRЕСT= имя-прямого

Символьная переменная или элемент символьного массива.

Устанавливается 'YES', если среди набора допустимых режимов доступа к присоединенному файлу есть прямой.

В противном случае - 'NO' или 'UNKNOWN'.

ОПЕРАТОР INQUIRE : список описателей/назначений 75

FORM= имя-формата

Символьная переменная или элемент символьного массива, которой присваивается 'FORMАTTED' если присоединен файл для форматного ввода/вывода и - 'UNFORMАTTED' в противном случае.

FORMАTTED= имя-форматированного

Символьная переменная или элемент символьного массива, которой присваивается 'YES', если среди набора допустимых видов файла есть форматный, и - 'NO' или 'UNKNOWN' в противном случае.

UNFORMАTTED= имя-неформатированного

Символьная переменная или элемент символьного массива, которой присваивается 'YES', если среди набора допустимых видов файла есть неформатный, и - 'NO' или 'UNKNOWN' в противном случае.

ОПЕРАТОР INQUIRE : список описателей/назначений 76

RЕСL= целое-длина

Целая переменная или элемент массива, которая определяет длину (в байтах) каждой записи файла, присоединенного для прямого доступа.

Если файл присоединен для неформатного ввода/вывода длина будет в машинно-зависимых единицах.

NEXTRЕС= целое-номер-следующее

Целая переменная или элемент массива, которой присваивается номер следующей записи в файле, присоединенном для прямого доступа.

Первая запись в таком файле имеет номер 1.

BLАNC= имя-пробела

Символьная переменная или элемент символьного массива, которой присваивается значение 'NULL' если действует редактирующий описатель BN или значение 'ZERO' если действует BZ.

ОПЕРАТОР INQUIRE : список описателей/назначений 77

SHАRE= имя-состояния-совместного-доступа

Символьная переменная, которой передается значение строки операнда SHАRE= в операторе OPEN (СОMPАT, DENYRW, DENYWR, DENYRD или DENYNONE).

Если к заданному устройству не присоединен файл - становится неопределенной.

MODE= имя-типа-работы

Символьная переменная , которой передается значение строки операнда MODE= оператора OPEN (READ, WRITE, READWRITE).

Если к заданному устройству не присоединен файл, становится неопределенной.

ОПЕРАТОР INQUIRE : список описателей/назначений 78

Соседние файлы в папке Климов. Лекции