std:: strlen не обрабатывает строки c, которые не завершены \0. Есть ли безопасная версия?
PS Я знаю, что в С++ std::string следует использовать вместо строк c, но в этом случае моя строка хранится в общей памяти.
ИЗМЕНИТЬ
Хорошо, мне нужно добавить некоторые объяснения.
Мое приложение получает строку из разделяемой памяти (которая имеет некоторую длину), поэтому ее можно представить в виде массива символов. Если в библиотеке есть ошибка, записывающая эту строку, тогда строка не будет завершена нулем, а strlen может выйти из строя.