Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
это проверка на то что "слово" есть в строчке "какое то слово" ?Есть функция для поиска последовательности строчных символов:Она копирует из области поиска по n байт длиною равной длине искомого, добавляет на конец 0 и сравнивает. И так, пока не кончится буфер.C++:int findstring(void* where_, char* what, int whereSize) { void* temp = malloc(strlen(what) + 1); int iterator = 0; char* yo = new char[strlen(what) + 1]; yo = (char*)temp; char* tempptr = static_cast<char*>(where_); while (iterator <= whereSize) { memcpy(temp, tempptr + iterator, strlen(what)); yo[strlen(what) + 1] = 0; if (strcmp((char*)temp, what) == 0) { free(temp); //delete yo; return iterator; } iterator++; } return -1; }
Однако, я её раз 10 наверное прогнал по циклу вызвов с одинаковыми параметрами, и примерно 33-39 из 100 вызовов она возвращает ошибку(-1). Лично я тут не вижу ошибки в логике, но результат говорит об обратном.
Помогите понять, где косяк, плиз.