|
2 / 2 / 0
Регистрация: 05.12.2018
Сообщений: 109
|
||||||
Пишем свой strlen14.03.2022, 00:20. Показов 2845. Ответов 27
Метки нет (Все метки)
Всем привет, вырвал часть задание из общего задание по написанию своего string.
На данном этапе столкнулся с проблемой (хотел написать свой strlen), но не знаю как реализовать нахождение мусора, могу через таблицу ASCII, но знаю вроде бы что, есть какая-то функция системная. кто подскажет?
0
|
||||||
| 14.03.2022, 00:20 | |
|
Ответы с готовыми решениями:
27
Пишем свой чекер пишем свой троян с нуля
|
|
Любитель чаепитий
|
|||
| 14.03.2022, 07:49 | |||
|
если в строке только \0, то может быть выход за пределы выделенной памяти.
0
|
|||
|
Вездепух
13210 / 6843 / 1824
Регистрация: 18.10.2014
Сообщений: 17,306
|
|
| 14.03.2022, 08:03 | |
|
1
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|||
| 14.03.2022, 11:52 | |||
|
Восьмиразрядный char и так имеет диапазон от 0 до 255 или от -128 до 127 (что тоже самое) в зависимости от знаковости. "Мусорные" символы вы таким образом никак не найдете, потому что понятие "мусорности" логическое, а не физическое. Что именно считается "мусором" - зависит от контекста, от логики исполнения конкретного кода. Например в Си-строках обычно "мусором" считается то, что идет после нуль-терминатора. Если нуль-терминатора в строке нет, то это уже не Си-строка (нарушено главное логическое условие). Если строка без нуль-терминатора, то критерием "мусорности" символов будет выход за пределы заданной размерности строки. Т.е. рядом с такой строкой всегда должен быть размер, который контролирует ее состояние. Сами по себе байты никакой информации о "мусорности" не несут, одна и та же последовательность байт может быть как "мусором", так и "не-мусором", в зависимости от заданных логических условий. Надеюсь вы уже поняли, что без контекста говорить о мусоре бессмысленно. Например, если в стандартный strlen передать последовательность символов, которая не является Си-строкой, то просто будет UB. Прямо так в документации и написано:
0
|
|||
|
Нарушитель
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,218
|
|
| 14.03.2022, 12:24 | |
|
Я где то читал, что string тоже нуль терминируеться.
только это большой секрет.
0
|
|
|
Нарушитель
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,218
|
|
| 14.03.2022, 13:15 | |
|
Ну тогда мы всё нашли.
Добавлено через 1 минуту Это с массивом интов проблемы. или чего подобного.
0
|
|
| 14.03.2022, 14:01 | |
|
0
|
|
|
Нарушитель
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,218
|
|
| 14.03.2022, 17:31 | |
|
при приёме в функцию указателя на строку, будь она хоть на куче,
смело спрашиваешь strlen. размер массива интов в функции определить нельзя, надо передавать переменную с размером. Ни каких больше проблем...
0
|
|
| 14.03.2022, 17:31 | |
|
Пишем свой интерпретатор языка BASIC Пишем свой класс, спецификатор доступа protected Пишем свой Хамачи Написать свой strlen Пишем свой Keylogger (кейлоггер) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы
## О чём эта статья
В процессе построения ОДУ-модели (система дифференциальных. . .
|
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет)
Содержание проекта
Симуляция вековой (50 лет) экологической сукцессии в почве леса
Основные участники: АМ-гриб, ЭКМ-гриб,. . .
|
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов
Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
|
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация
В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
|
|
Сукцессия 20. Война автоботов. Делаем ставки. Лёд против "пш-пш!".
anaschu 11.07.2026
Битва ИИ в ризосфере: Как мы скрестили жесткие ОДУ, закон Фика и «подземный шантаж»
Уважаемые коллеги!
Хочу поделиться уникальным опытом ведения междисциплинарной компьютерной разработки. Прямо. . .
|
Сукцессия 19. Какие выводы я сделал из модели? Часть 2.Внутримикоризный стехиометрический буфер и хроно-дискретные зоны экспансии
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы
Математический аппарат моделирования
|
Сукцессия 18. Какие выводы я сделал из войны грибов с деревьями? Часть 1- рассказ и немного про термины
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы
Математический аппарат моделирования
Система ОДУ описывает динамику изменения массы различных компонентов системы во времени. Ключевой. . .
|
Просветление в 5 секунд
kumehtar 10.07.2026
Андрей Веретенников выдал фразу недавно: "Вам не обязательно кем-то себя считать"
|