Namensräume
Varianten
Aktionen

std::strlen

Von cppreference.com
< cpp‎ | string‎ | byte
 
 
 
 
Definiert in Header <cstring>
std::size_t strlen( const char* str );

Gibt die Länge des gegebenen Byte-Strings zurück, d. h. die Anzahl der Zeichen in einem Zeichenarray, dessen erstes Element von str aus gezeigt wird, bis zu, aber nicht einschließlich, dem ersten Nullzeichen. Das Verhalten ist undefiniert, wenn im vom Zeiger str gezeigten Zeichenarray kein Nullzeichen vorhanden ist.

Inhalt

[bearbeiten] Parameter

str - Zeiger auf den nullterminierten Byte-String, der untersucht werden soll

[bearbeiten] Rückgabewert

Die Länge des nullterminierten Strings str.

[bearbeiten] Mögliche Implementierung

std::size_t strlen(const char* start)
{
    // NB: start is not checked for nullptr!
    const char* end = start;
    while (*end != '\0')
        ++end;
    return end - start;
}

[bearbeiten] Beispiel

#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';
}

Ausgabe

without null character: 7
with null character: 14

[bearbeiten] Siehe auch

gibt die Länge einer breiten Zeichenkette zurück
(Funktion) [bearbeiten]
gibt die Anzahl der Bytes im nächsten Multibyte-Zeichen zurück
(Funktion) [bearbeiten]
C-Dokumentation für strlen