- •Краткий справочник по Турбо Паскалю 7.0 Петрозаводск
- •Краткий справочник по Турбо Паскалю 7.0
- •Оглавление
- •Введение
- •Таблицы кодировки символов Коды 0…127 (кодировка ascii)
- •Коды 128…255 (альтернативная таблица)
- •Типы данных в Турбо Паскале 7.0
- •1. Среда Турбо Паскаля
- •1.1. Запуск
- •Структура основного экрана
- •Зарезервированные слова
- •Таблицы истинности логических операций
- •Литература Список использованной литературы
- •Список рекомендуемой литературы
- •1.3. Команды текстового редактора
- •Команды текстового редактора Турбо Паскаля
- •1.4. Справочная система
- •Заключение
- •1.5. О режиме отладки
- •2. Язык Турбо Паскаль
- •2.1. Знакомство с языком Паскаль
- •Идентификаторы
- •Константы
- •Выражения
- •Старшинство операций в логическом выражении
- •2 11 3 6 4 5 7 10 8 1 9 12
- •2.6.2. Процедуры и функции из библиотеки Graph
- •2.6. Графика в Турбо Паскале
- •2.6.1. О графическом режиме
- •2.2. Структура программы
- •Общая структура программ в тп 7.0
- •Структура программы в виде рбнф
- •2.5.4. О переменных-указателях и динамической памяти
- •Процедуры и функции для текстовых файлов
- •Процедуры для нетипизированных файлов
- •2.3. Описание данных
- •2.3.1. Простые типы данных
- •2.3.2. Строки. Строковые функции и процедуры
- •Процедуры и функции для работы с символами и строками
- •Стандартные средства обработки файлов
- •2.5.3. Работа с файлами
- •2.3.3. Структуры данных. Массивы
- •2.3.4. Об использовании функций и процедур
- •2.5. Дополнительные структуры данных
- •2.5.1. Множества
- •2.5.2. Записи
- •Цикл со счетчиком
- •2.3.5. Функции и процедуры из библиотеки System Математические
- •Прочие функции и процедуры
- •Преобразования типов данных
- •2.3.6. Процедуры и функции из библиотеки Crt
- •2.4.3. Структуры цикла
- •Цикл с предусловием
- •Цикл с постусловием
- •2.4.2. Структуры ветвления Безусловный переход
- •Условный переход (ветвление)
- •Многовариантный выбор
- •2.3.7. Функции и процедуры пользователя
- •2.4. Операторы
- •2.4.1. Последовательные структуры Присваивание
- •Ввод и вывод данных
2.3.2. Строки. Строковые функции и процедуры
Строка – последовательность (цепочка) символов; строки занимают промежуточное место между простыми типами и структурами данных.
Для строк, как и для символьных данных, применимы операция объединения строк (конкатенация) и операции сравнения.
Объявление строк:
var ИмяСтроки : string ; - строка длиной 255 cимволов.
var ИмяСтроки : string [ДлинаСтроки] ; - строка заданной длины (1 255 Б).
При объявлении используются и другие разделы (type и const).
Пример:
const Month0 : string [10] = ‘ January’ ; { типизированная константа Month0 }type Month : string [10] ; { тип пользователя Month }var Mon1, Mon2 : Month ;
Day_of_week : string [12] ;
Обращение к символу строки – ИмяСтроки [Nсимвола].ИмяСтроки [Nсимвола] может быть левой частью оператора присваивания, а также операндом в символьном выражении.
Нумерация символов в строке начинается с 1 (в байте с номером 0 помещается длина строки). Строковая константа может быть длиной 0 (‘’).
Процедуры и функции для работы с символами и строками
Обращение |
Тип результата |
Действие |
Str (Выражение, Строка) |
string |
Преобразование целочисленного выражения в строку |
Val (Строка, Число, Код) |
real |
Преобразование строки с числом, в число; в случае успеха, Код = 0 |
Insert (Строка1, Строка2, N) |
string |
Вставка Строки1 в Строку2, начиная с позиции N |
Delete (Строка, N, M) |
string |
Удаление M-символов, начиная с позиции N |
Length (Строка) |
byte |
Количество символов в строке |
Pos (Подстрока, Строка) |
byte |
Позиция подстроки в строке (0, если не найдена) |
Concat (Строка1,…,СтрокаN) |
string |
Объединение N строк в одну |
Copy (Строка, N, M) |
string |
Копирование из данной строки М-символов, начиная с позиции N |
UpCase (Символ) |
char |
Преобразование строчной буквы в прописную (кроме русских букв) |
Str, Val, Insert, Delete –процедуры, остальные в таблице – функции.
Подстрока – часть строки; N – номер (позиция) символа в строке – целочисленная константа или переменная, значение которой не выходит из диапазона [1.. ДлинаСтроки]; M – количество символов в удаляемой или копируемой подстроке, причем (N + M - 1) ≤ ДлинаСтроки.
Функции преобразования типов данных Chr и Ord см. в гл. 2.3.5.
29
Стандартные средства обработки файлов
Обращение |
Действие |
Assign (F, ИмяФайла) |
Связывает файловую переменную Fс внешним (физическим) файлом; если второй параметр - ‘prn’, то файл выводится на печать, если - ‘ ’, то файл выводится на экран |
Reset (F) |
Открывает существующий файл для чтения |
Rewrite (F) |
Создает и открывает новый файл; при этом уничтожается существующий файл с таким же именем |
Close (F) |
Закрывает открытый ранее файл |
Rename (СтароеИмяФайла, НовоеИмяФайла) |
Переименовывает существующий внешний (закрытый) файл |
Erase (F) |
Удаляет внешний (закрытый) файл |
ChDir (S) |
Устанавливает текущий каталог |
MkDir (S) |
Создает подкаталог |
RmDir (S) |
Удаляет пустой каталог |
Seek (ИмяФайла, N) |
Устанавливает текущую позицию файла на компонент с номером N в файле (режим прямого доступа); не используется с текстовыми файлами |
Truncate (F) |
Усекает размер файла до текущей позиции в файле (не используется с текстовыми файлами) |
EOF (F)
|
Проверяет, достигнут ли конец файла (TRUE) или нет (FALSE) |
IOResult |
Возвращает результат последней операции ввода-вывода (0 - успех, < > 0 – неудача) |
FilePos (F) |
Возвращает текущую позицию в файле (не используется с текстовыми файлами) |
FileSize (F) |
Возвращает текущий размер файла (не используется с текстовыми файлами) |
Последние четыре в таблице – функции, остальные – процедуры.
F – файловая переменная, S - переменная или константа строкового типа.
Для внешних файлов (файлов на диске) ИмяФайла – это имя типа файла ; оно может быть переменной или константой строкового типа длиной менее 80 символов; ИмяФайла должно быть полным именем файла (т.е. написано по правилам MS-DOS): иметь вид: [ИмяДиска:] [Путь\] СоставноеИмяФайла,
где СоставноеИмяФайла – это ИмяФайла [. Расширение], причем ИмяФайла и Расширение состоят из разрешенных в MS-DOS символов. Количество символов в имени - 1÷8, в расширении - 1÷3; разделитель - точка; Квадратные скобки здесь обозначают, что данную конструкцию (сами скобки и их содержимое) можно опускать. Если имя диска/путь отсутствует, то диск/каталог считается текущим.
28
3) Объявление записи с вариантами (вариантными полями)
type ИмяЗаписи = record
СписокПолей; {Инвариантная часть}
case КлючВыбора of {СписокВыбора}
константа1: (Список1_полей) ;
константа2: (Список2_полей) ; …
константаN: (СписокN_полей) ;
end ; {end закрывает record , а не case}
КлючВыбора – переменная порядкового типа;
СписокВыбора – следующие за словом of варианты.
Оператор присоединения WITH
позволяет упростить доступ к полям записи, опуская в операторах внутри операторных скобок begin и end имя записи и указывая только имена полей этой записи.
with ИмяЗаписи do
begin
ОператорыПрограммы
end;