Строковые константы используются в ТП, чтобы определять произвольный (даже многострочный) текст. Строковые константы должны располагаться в пределах одной строки и быть заключенными в апострофы.
Строковая_константа::=
Простая_строка |
Упр_символ |
{Простая_строка | упр_символ}.
Пробелы между простыми строками и управляющими символами не ставятся.
Простая_строка ::= " ' " {символ_строки} " ' ".
Под символом строки понимается любой видимый на экране символ, кроме знака апострофа.
Пример: 'Запасайтесь, дьяволы, гробами, стрелять буду!'
{Зощенко}
А следующий пример синтаксически неверен!
'Коль подарите нас своим вниманьем,
Изъяны все загладим мы стараньем.'
{Вильям Шекспир "Ромео и Джульетта"}
В случае, если строка должна включать в себя знак апострофа, требуется ставить два таких знака подряд.
Пример: строковая константа, состоящая из простой строки
'Вы даже, если хотите знать, нес''едобны'
{Стругацкие, "Сказка о тройке"}
при выводе на экран будет выглядеть следующим образом:
Вы даже, если хотите знать, нес'едобны
Упр_символ ::= "#" натуральное_однобайтовое_число
Управляющие символы позволяют использовать знаки, которые имеют специальное предназначение. Так как в стандартной таблице символов ASCII всего 256 знаков, то для определения любого символа достаточно однобайтового числа.
С помощью пары управляющих символов можно создавать многострочный текст, заключенный в одну строковую константу. Символ с номером 13 означает переход на следующую строку, а символ с номером 10 - возврат на начало строки. Таким образом, строковая константа
'Бьется в тесной печурке огонь'#10#13'На поленьях смола как слеза'
на экране будет выглядеть так
Бьется в тесной печурке огонь
На поленьях смола как слеза