Типове завдання реалізує та виконує наступні операції над рядками :
- Визначає позицію першого входження символу С в рядок S. Якщо С знайдено, то повертається покажчик на С в S. В іншому випадку повертається покажчик NULL.
- Визначає і повертає довжину початкової частини рядка S1, що складається з символів, які не містяться в рядку S2.
- Визначає позицію першого входження в строку S1 будь-якого з символів рядка S2.
3.5.1. Текст програми
#include <iostream.h>
#include <string.h>
#include <conio.h>
// Прототипи функцій
int str1(void);
int str2(void);
int str3(void);
//Головна програма
main (void)
{
clrscr();
str1();
str2();
str3();
getch();
return 0;
}
//Визначається входження символа в рядок
int str1(void)
{ char *string="Це тест";
char character1='т',character2='н';
if (strchr(string,character1)!=NULL) //порівнюється 1-й символ рядка з заданим
cout<<"Символ'"<<character1<<" ' знайдено в "”
<<string<<""." <<endl;
else
cout<<"Символ '"<<character1<<" 'не найдено в ""
<<string<<""." <<endl;
if (strchr(string,character2)!=NULL) //порявнюється 1-й символ рядка с заданим
cout<<"Символ'"<<character2<<" ' знайдено в ""
<<string<<""." <<endl;
else
cout<<"Символ '"<<character2<<" 'не знайдено в ""
<<string<<"".n" <<endl;
return 0;
}
//Визначається і повертається довжина початкової частини рядка
int str2(void)
{
char *string1="Це тест n";
char *string2="1234567890";
cout<<"string1="<<string1<<"string2= "<<string2
<<"nnДовжина початкової части string1,"
<<"що не містить символів з string2, дорівнює "
<<strcspn(string1,string2)<< endl; //Визначення довжини рядка
return 0;
}
//Визначаємо позицію 1-го входження символу в рядок
int str3(void)
{
char *string1="Це тест";
char *string2="остерегайтеся";
cout << "nn Серед символів рядка""<<string2<<""n'"
<<*strpbrk(string1,string2)<<"' - " //Визначаємо позицію 1-го входження символу в рядок
<<"перший, що зустрічається в рядкуn""
<<string1<<'"'<< endl;
return 0;
}
3.5.2. Результат роботи програми
Символ 'т ' знайдено в "Це тест".
Символ 'н ' не знайдено в "Це тест".
string1=Це тест
string2= 1234567890
Довжина початкової частини string1,
що не містить символів з string2, дорівнює 10
Серед символів рядка "остерігайтеся"
'е' - перший, що зустрічається в рядку "Це тест"