У програмі строкова змінна може бути оголошена із зазначенням довжини або без неї.
Наприклад:
stroka1: string [10]; stroka2 : string;
При читанні з файлу значення строкової змінної, довжина якої явно задана в її оголошенні, зчитується стільки символів, скільки вказано в оголошенні, але не більше, ніж в поточному рядку.
При читанні з файлу значення строкової змінної, довжина якої явно не задана в оголошенні змінної, значенням змінної стає залишилася після останнього читання частина поточної рядки. Іншими словами, якщо треба прочитати з файлу всю рядок, то оголосіть строкову змінну, довжина якої свідомо більше найдовшою рядки файлу, і зчитується рядок в цю змінну.
Якщо однією інструкцією readin здійснюється введення декількох, наприклад, двох змінних, то перша змінна буде містити стільки символів, скільки вказано в її оголошенні або, якщо довжина не вказана, весь рядок файлу. Друга змінна буде містити залишилися символи поточного рядка або, якщо таких символів ні, не буде містити жодного символу (довжина рядка дорівнює нулю).
Нехай, наприклад, текстовий файл f reinds. txt містить рядки:
Косичкина Маша Васильєв Антон Цой Лариса
У табл. 7.1 приведено кілька варіантів оголошення змінних, інструкції читання з файлу freinds.txt і значення змінних після виконання інструкцій читання.
Таблиця 7.1. Приклади читання рядків з файлу
Оголошення Інструкція читання змінних з файлу | Значення змінних після читання з файлу | |
fam: string [15] | Readin (f, fam, name) | f am = ‘Косичкина |
name: string [10] | name = ‘Маша | |
fam, name: string; | Readin (f, fam, name) | fam = ‘Косичкина Маша ‘ |
name = ‘ ‘ | ||
drug: string [80] | Readin (f, drug) | drug = ‘Косичкина Маша’ |