• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

поиск Char* в Char*

  • Автор темы ARTHES
  • Дата начала
A

ARTHES

Добрый вечер!

Небольшой вопрос: есть один char* и второй char*, нудно определить, содержится ли в последовательности символов первого char* последовательность символов второго char*.

Например:

char* a = "reem";
char* b = "agreement";

bool c = function(b,a); // в данном случае true

Вопрос: может есть что-либо наподобие такой функции стандартное?

Заранее спасибо.
 
A

ARTHES

Я думаю, вот это подойдет:



const char * strstr ( const char * str1, const char * str2 );
char * strstr ( char * str1, const char * str2 );


Locate substring

Returns a pointer to the first occurrence of str2 in str1, or a null pointer if there str2 is not part of str1.

The matching process does not include the terminating null-characters.

Parameters
str1
C string to be scanned.
str2
C string containing the sequence of characters to match.
 
O

OperaSib

тема конечно давно уже ушла в небытие, но мне интересно правильно ли я решил эту задачу) откоментируйте плз)
(С++ только начал изучать):

Код:
//---------------------------------------------------------------------------
int Strcmp_(const char*__s1,const char*__s2);	  //int - сравнение строк
//---------------------------------------------------------------------------

//int - сравнение строк
int Strcmp_(const char*__s1,const char*__s2)
{
int i=0,a;
while(__s1[i]==__s2[i])
{
if(__s1[i]=='\0') return 0;
i++;
}
a=((int)(unsigned char)__s1[i])-((int)(unsigned char)__s2[i]);
return a;

}
//---------------------------------------------------------------------------
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!