Namespaces
Variants

std:: strlen

From cppreference.net
Definido en el encabezado <cstring>
std:: size_t strlen ( const char * str ) ;

Devuelve la longitud de la cadena de bytes dada, es decir, el número de caracteres en un arreglo de caracteres cuyo primer elemento está apuntado por str hasta y sin incluir el primer carácter nulo. El comportamiento es indefinido si no hay un carácter nulo en el arreglo de caracteres apuntado por str .

Contenidos

Parámetros

str - puntero a la cadena de bytes terminada en nulo que se examinará

Valor de retorno

La longitud de la cadena terminada en nulo str .

Implementación posible

std::size_t strlen(const char* start)
{
    // NB: ¡start no se verifica para nullptr!
    const char* end = start;
    while (*end != '\0')
        ++end;
    return end - start;
}

Ejemplo

#include <cstring>
#include <iostream>
int main()
{
    const char str[] = "dog cat\0mouse";
    std::cout << "without null character: " << std::strlen(str) << '\n'
              << "with null character: " << sizeof str << '\n';
}

Salida:

without null character: 7
with null character: 14

Véase también

devuelve la longitud de una cadena ancha
(función)
devuelve el número de bytes en el siguiente carácter multibyte
(función)
Documentación C para strlen