Лекция: Описание и ввод строковых данных

В языке БЕЙСИК для обработки последовательности символов используется строковый тип данных. Данные строкового типа могут быть строковыми константами и строковыми переменными.

Строковая константа представляет собой произвольную последова­тельность символов, заключенную в двойные кавычки, длиной до 32567 символов, например, " Hello", «Добрый день».

Строковые переменные бывают переменной или фиксированной длины. Строка переменной длины (STRING ) представляет собой последовательность длиной до 32567 символов из таблицы ASCII. В памяти под такую символьную переменную отводится количество байт равное количеству символов переменной плюс 4. Объявить строковый тип переменной длины можно одним из приведенных ниже способом:

1) явно — с помощью суффикса $: Hello$ = «Привет»

2) явно — с помощью операторов описания типа: DIM Hello AS STRING

3) неявно — с помощью оператора объявления типа данных DEFSTR

Чаще всего используют описание строковых переменных с помощью суффикса, в этом случае строковые переменные сразу видно в тексте программы.

Строка фиксированной длины (STRING * N) представляет собой строку длиной N символов. В памяти под такую символьную переменную отводится N байт. Описать символьную переменную фиксированной длины можно таким образом:

DIM Hello AS STRING*12

Hello = «Привет — Hello»

PRINT " Результат:"; Hello

На экран будет выведено (учитывая заданную длину строковой константы):

Результат: Привет — Hel

Строковой переменной можно присвоить значение либо с помощью оператора присваивания, например,

St$ =«abcde»,

либо с помощью операторов ввода, например:

DATA «abcde»

READ St$

или

INPUT St$

Однако при вводе значения строковой переменной оператором INPUT возникают определенные трудности. Если среди символов вводимой строки встречаются запятые, то запятая воспринимается оператором INPUT, как разделитель. Чтобы обойти эту проблему, предусмотрена модификация опе­ратора INPUT:

LINE INPUT St$

Этот оператор предназначен специально для ввода в одну строковую переменную полной строки текста независимо от ее содержания.

еще рефераты
Еще работы по информатике