std::strlen
Материал из cppreference.com
<tbody>
</tbody>
| Определено в заголовочном файле <cstring>
|
||
std::size_t strlen( const char* str ); |
||
Возвращает длину заданной строки байтов, то есть количество символов в массиве символов, на первый элемент которого указывает str, до первого нулевого символа и не включая его. Поведение не определено, если в массиве символов, на который указывает str, нет нулевого символа.
Параметры
| str | — | указатель на строку байтов с нулевым завершающим символом, подлежащую проверке |
Возвращаемое значение
Длина строки str, завершающейся нулём.
Возможная реализация
std::size_t strlen(const char* start)
{
// Примечание: проверка nullptr не производится!
const char* end = start;
for( ; *end != '\0'; ++end)
;
return end - start;
}
|
Пример
Запустить этот код
#include <cstring>
#include <iostream>
int main()
{
const char str[] = "How many characters does this string contain?";
std::cout << "без нулевого символа: " << std::strlen(str) << '\n'
<< "с нулевым символом: " << sizeof str << '\n';
}
Вывод:
без нулевого символа: 45
с нулевым символом: 46
Смотрите также
| возвращает длину широкой строки (функция) | |
| возвращает количество байтов в следующем мультибайтовом символе (функция) | |
Документация C по strlen
| |