Консультация № 144336
18.09.2008, 20:07
0.00 руб.
0 3 1
Доборого времени суток, напишите пожалуйста кратко о функциях обработки строк:

strcpy
scrcat
strcmp
strlen

И если можно наведите программу-пример для демонстрации использования этих функций.

Обсуждение

Неизвестный
18.09.2008, 20:41
общий
это ответ
Здравствуйте, алексей_!

Для использования всех этих функций, в программу необходимо включить заголовок <cstring>

Функция strcpy()
Общий формат вызова функции:

strcpy(str1, str2);

Функция strcpy() копирует строку, точнее содержимое строки str2 в строку str1.
При этом нужно помнить, что строка в которую копируем, т.е. строка str1, должна
быть достаточно большой, чтобы в неё можно было поместить содержимое строки str2.

----------------

Функция strcat()
Общий формат вызова функции:

strcat(str1, str2);

Функция strcat() присоединяет строку str2 к концу строки str1. Строка str2 при этом не изменяется.

----------------

Функция strcmp()
Общий формат вызова функции:

strcmp(str1, str2);

Функция strcmp() сравнивает строку str2 и str1 и возвращает значение:

0 - если строки равны.
положительное число - если строка str1 лексикографически больше str2.
отрицательное число - если строка str1 лексикографически меньше str2.

----------------

Функция strlen()
Общий формат вызова функции:

strlen(str1);

Функция strlen() возвращает длину строки.

----------------

Код С++ программы с примером использования строковых функций в приложении.
Будут вопросы по коду - задавайе в мини-форум вопроса.

Удачи Вам!!!



Приложение:
//Подключаем заголовок потокового ввода/вывода
#include <iostream>
//Подключаем заголовок для обеспечения работы с функциями для обработки строк
#include <cstring>

using namespace std;

int main()
{
char str1[30] = " I love";
char str2[30] = " C++";
char str3[30];

cout << " str1: " << str1 << endl;
cout << " str2: " << str2 << endl;

strcpy(str3, str2); //Копируем содержимое строки str2 в строку str3;

cout << endl << " str3: " << str3 << endl;

strcat(str1, str2); //Присоединяем строку str2 к концу строки str1;

cout << endl << " str1: " << str1 << endl << endl;

strcpy(str3, str2);

if(!strcmp(str2, str3)) /*Сравниваем строки. Обратите особое внимание на использование оператора !НЕ.
функция 'strcmp' возвращает значение 0, если строки одинаковые, а для if нам
нужна истина, т.е. 1*/

cout << " str2 = str3 " << endl << endl;

cout << " length str1: " << strlen(str1) << endl << endl; //Возвращаем длину строки;

return 0;
}
Неизвестный
18.09.2008, 20:45
общий
Полюбите wiki. Вот, например, про strcpy
Неизвестный
18.09.2008, 20:49
общий
[b] to Алексей: [/b] Купите учебник для начинающих Шилдта или например Дейтеля - там всё подробно описано
Форма ответа