Строковые объекты, механизм перегрузки операций. Основные задачи при организации приложений архитектуры клиент-сервер

Страницы работы

Фрагмент текста работы

Министерство образования Республики Беларусь

Учреждение образования

Белорусский государственный университет

информатики и радиоэлектроники

Специальность: Маркетинг

ЛАБОРАТОРНАЯ РАБОТА 1

по курсу «Объектно-ориентированное программирование

и проектирование»

Вариант № 1

Выполнил:

.

группа №702221с, шифр №21

Адрес: 220039,

МИНСК   2010


СТРОКОВЫЕ ОБЪЕКТЫ. МЕХАНИЗМ ПЕРЕГРУЗКИ ОПЕРАЦИЙ

Цель работы: Изучить методику по созданию одномерных динамических символьных массивов при помощи конструкторов с захватом динамической памяти и деструкторов для их уничтожения, а так же способа работы со строковыми объектами. Познакомиться с механизмом перегрузки операций.

Краткие теоретические сведения

Строка в языке С – это одномерный массив типа char, заканчивающийся нулевым байтом или признаком окончания строки, которая определена как символьная константа '\0'.

Положение нулевого байта определяет фактическую длину строки. Количество элементов в символьной строке на 1 больше, чем изображение строки.

Определение символьной строки: char ИмяСтроки [размер];

ИмяСтроки – это указатель на первый символ в строке, т.е. адрес первого символа.

Размер-1 – это максимальное количество символов, которые могут быть записаны в строке.

Поместить строку в массив можно либо при вводе, либо с помощью инициализации. При вводе с помощью операции >> признак окончания ввода строки нажатие клавиши "пробел". Для того чтобы, признак окончания ввода строки было нажатие клавиши "ввод", необходимо воспользоваться следующим методом класса iostream:  istream& getline (signedchar*,int,char_delim='\n'), где первый параметр signedchar* – это имя строки, второй параметр int– это размер массива, ретий параметр – это символ которым завершается ввод, по умолчанию – это ‘\n’.

Примеры ввода с помощью метода getline():

char str[80];

1. cin.getline(str,80); // признак окончания ввода строки было нажатие клавиши                             //"ввод"

2. cin.getline(str,80,’%’); // признак окончания ввода строки было нажатие                                        // клавиши "процент"

Операции над строками выполняются только через стандартные функции. Декларации функций для работы со строками размещены в файле string.h.

Некоторые наиболее часто используемые функции из библиотеки string.h:

1. Функция присваивания: char* strcpy (char*s1, const char*s2); копирует строку s2 в строку s1, причем размер строки s1 должен быть достаточно большим, чтобы хранить строку s2 и символ конец строки. Возвращает значение строки s1.

2. Функциидобавления:

char* strcat (char*s1, const char*s2);

добавляет к строке s1 строку s2, причем размер строки s1 должен быть достаточно большим, чтобы хранить строки s1 и s2, а так же символ конец строки. Возвращает значение строки s1.

char* strncat(char*s1, constchar*s2, int n); добавляет не более nсимволов из строки s2 в строку s1, причем размер строки s1 должен быть достаточно большим, чтобы хранить строки s1 и s2, а так же символ конец строки. Возвращает значение строки s1.

4. Функции сравнения:

int strcmp (const char*s1,const char*s2);

Сравнивает посимвольно строки s1 и s2, причем регистр учитывается. 

Возвращает:   0, если строки одинаковы; 1 если встречается хотя бы один символ в    строке s1, код которого больше, чем код символа строки s2; -1, если встречается хотя бы один символ в строке s1, код которого меньше, чем код символа строки s2.

int strncmp (const char*s1,const char*s2, int n); Сравнивает не более n символов строк s1 и s2, регистр учитывается.

int strcmpi (const char*s1,const char*s2); Сравнивает посимвольно

Похожие материалы

Информация о работе