C/C++ Урок 20. Работаем со строками
Вообще говоря в C/C++ нет строкового типа. Его роль выполняет либо указатель на char, либо массив char'ов. Для работы с такими строками в C++ есть несколько функций, тиена которых начинаются на str. Вот пример их использования:
#include <iostream.h>
#include <string.h>
void main()
{
char* ch="Roman";
char ch1[30];
//Показывем длину строки
cout<<strlen(ch)<<"\n";
//Копируем строку
strcpy(ch1, ch);
cout<<ch1<<"\n";
//Длина скопированной строки такая же, как и у старой
cout<<strlen(ch1)<<"\n";
//Сравнение строк
if(strcmp(ch, "Roma")==0)
{
cout<<"Strings are equal\n";
}
else
{
cout<<"Strings are not equal\n";
}
//Конкатенация (сложение) строк
strcpy(ch1, "Roman");
strcat(ch1, " Alexeev");
//Выведется "Roman Alexeev"
cout<<ch1<<"\n";
}
Для использования таких функций мы должны написать соответствующий include:
...
#include <string.h>
...
Пару слов следует сказать о функции strcmp. Она возвращает ноль, если строки равны; отрицательное число, если строка, задаваемая первым параметром, расположена в алфавитном порядке раньше строки, задаваемой вторым параметром; и положительное число, если первая строка расположена в алфавитном порядке дальше, чем вторая.
|