ВУЗ:
Составители:
Рубрика:
{ В результате в строке sto будет 'Фамилия Имя Отчество'}
End; . . .
Сравнение строк основывается на порядке расположения символов в
таблице ASCII. Например:
'abcd' = 'abcd' - результат сравнения True (истина);
'abc'<'bcd' так как код символа 'a' меньше кода символа 'b' и т.п.
Для работе со строками в ТР разработан ряд стандартных процедур и
функций.
Первоначально любая описанная в разделе Var строка
содержит
"мусор" и рекомендуется инициализировать (заполнять) строки пустыми
значениями или чем-либо другим. Для заполнения достаточно длинных строк
одинаковыми символами используется встроенная процедура FillChar,
например:
Var S:string[80];
Begin . . .
FillChar(S[1],80,' '); {Заполнение строки пробелами}
или
FillChar(S,Sizeof(S),' '); {Заполнение строки пробелами}
S[0]:=Chr(80); {Занесение кода длины строки}
. . .
End;
Длину строки можно определить также, используя встроенную
функцию Length(S), где S - строка типа String.
В ряде
случаев возникает необходимость преобразования числовых
значений в строку и наоборот. Для этого можно использовать две процедуры:
1) STR(X,S) - преобразует числовое значение X в строковое S.
Возможно задание формата для Х в виде: X:F:n (для вещественных чисел, где
F - общее число позиций выделяемых под число, включая десятичную точку,
а n - число знаков в дробной части) или X:F (для целых
чисел). Эта функция
чаще всего используется при работе с процедурами модуля GRAPH.
Например:
STR(55,s); - строковая переменная s принимает значение, равное '55'.
2) VAL(S,Х,ErrCode) - преобразует строку S в числовое значение, если это
возможно. Параметр ErrCode содержит ноль, если преобразование прошло
успешно, и тогда в Х помещается результат преобразования, в противном
случае он содержит номер позиции в строке S,
где обнаружен ошибочный
символ. Например:
Val('125',K,kod) - в результате выполнения этой процедуры переменная
К получает целое значение, равное 125, параметр kod=0;
Val(' 1.05',M,code) - M=1.05, code=0;
Val('100, ',N,code) - это ошибочный вызов, т.к. в исходной строке на 4-й
позиции располагается недопустимый для числа символ ',' и поэтому
параметр code=4, а переменная N остается без изменения.
{ В результате в строке sto будет 'Фамилия Имя Отчество'} End; ... Сравнение строк основывается на порядке расположения символов в таблице ASCII. Например: 'abcd' = 'abcd' - результат сравнения True (истина); 'abc'<'bcd' так как код символа 'a' меньше кода символа 'b' и т.п. Для работе со строками в ТР разработан ряд стандартных процедур и функций. Первоначально любая описанная в разделе Var строка содержит "мусор" и рекомендуется инициализировать (заполнять) строки пустыми значениями или чем-либо другим. Для заполнения достаточно длинных строк одинаковыми символами используется встроенная процедура FillChar, например: Var S:string[80]; Begin ... FillChar(S[1],80,' '); {Заполнение строки пробелами} или FillChar(S,Sizeof(S),' '); {Заполнение строки пробелами} S[0]:=Chr(80); {Занесение кода длины строки} ... End; Длину строки можно определить также, используя встроенную функцию Length(S), где S - строка типа String. В ряде случаев возникает необходимость преобразования числовых значений в строку и наоборот. Для этого можно использовать две процедуры: 1) STR(X,S) - преобразует числовое значение X в строковое S. Возможно задание формата для Х в виде: X:F:n (для вещественных чисел, где F - общее число позиций выделяемых под число, включая десятичную точку, а n - число знаков в дробной части) или X:F (для целых чисел). Эта функция чаще всего используется при работе с процедурами модуля GRAPH. Например: STR(55,s); - строковая переменная s принимает значение, равное '55'. 2) VAL(S,Х,ErrCode) - преобразует строку S в числовое значение, если это возможно. Параметр ErrCode содержит ноль, если преобразование прошло успешно, и тогда в Х помещается результат преобразования, в противном случае он содержит номер позиции в строке S, где обнаружен ошибочный символ. Например: Val('125',K,kod) - в результате выполнения этой процедуры переменная К получает целое значение, равное 125, параметр kod=0; Val(' 1.05',M,code) - M=1.05, code=0; Val('100, ',N,code) - это ошибочный вызов, т.к. в исходной строке на 4-й позиции располагается недопустимый для числа символ ',' и поэтому параметр code=4, а переменная N остается без изменения.
Страницы
- « первая
- ‹ предыдущая
- …
- 47
- 48
- 49
- 50
- 51
- …
- следующая ›
- последняя »