Лабораторная работа №7. Использование строк
Цель работы: изучить особенности строковых данных, правила работы с компонентами ListBox и СomboBox. Написать и отладить программу работы со строками.
Общие теоретические сведения
Строки как одномерные массивы символов
В языке С/С++ строка – это одномерный массив символов, заканчивающийся нулевым байтом, каждый бит которого равен нулю, при этом для нулевого байта определена константа ´\0´ (признак окончания строки или нуль-терминатор).
Для строки, состоящей из 80 символов, в описании массива необходимо указать размер 81, т.к. последний байт отведится под нуль-терминатор.
Напомним, что строковая константа – это набор символов, заключенных в кавычки, например, “Лабораторная работа по строкам” (´\0´ не указывается).
Строки можно инициализировать при декларации, например:
char S1[10] = ”123456789”, S2[ ] = ”12345”;
в последнем случае размер строки устанавливается по фактическому количеству.
Операции над строками рекомендуется выполнять с использованием стандартных библиотечных функций, рассмотрим наиболее часто используемые функции библиотеки string.h:
1) strcpy(S1, S2) – копирует содержимое строки S2 в строку S1;
2) strcat(S1, S2) – присоединяет строку S2 к строке S1 и помещает ее в массив, где находилась строка S1, при этом строка S2 не изменяется; нулевой байт, который завершал строку S1, заменяется первым символом строки S2;
3) strcmp(S1, S2) – сравнивает строки S1 и S2 и возвращает значение =0, если строки равны, т.е. содержат одно и то же число одинаковых символов; значение <0, если S1<S2; и значение >0, если S1>S2.
4) strlen(S) – возвращает длину строки, т.е. количество символов, начиная с первого (S[0]) и до нуль-терминатора, который не учитывается.
5)strstr(S1, S2) –указывает первое появление подстроки S2 в строке S1.
6) преобразование строки S в число (библиотека stdlib.h): целое – (int) atoi(S); длинное целое – (long) atol(S); действительное – (double) atof(S);
при возникновении ошибки данные функции возвращают значение 0;
7) преобразование числа V в строку S: целое – itoa(int V, char S, int kod); длинное целое – ltoa(long V, char S, int kod); значение параметра kod определяет выбор системы счисления для преобразования и находится в диапазоне 2£kod£36, для отрицательных чисел kod = 10.
Создание оконного приложения
Тип AnsiString
Тип AnsiString является основным строковым классом вBuilder.
Часто используемые методы этого класса: с_str() – преобразование строки AnsiString в массив символов; Delete()– удаление символов, SubString() – копирование подстроки; Pos() – поиск позиции; Length() – определение длины строки.
Компонента ListBox
Данная компонента представляет собой список, элементы которого выбираются при помощи клавиатуры или мыши. Список элементов задается свойством Items, методы Add, Delete и Insert которого используются для добавления, удаления и вставки строк, соответственно. Объект Items хранит строки списка. Для определения номера выделенного элемента используется свойство ItemIndex.
Дата добавления: 2022-02-05; просмотров: 224;