Namespaces
Variants

wcslen, wcsnlen_s

From cppreference.net
< c ‎ | string ‎ | wide
Definiert im Header <wchar.h>
size_t wcslen ( const wchar_t * str ) ;
(1) (seit C95)
size_t wcsnlen_s ( const wchar_t * str, size_t strsz ) ;
(2) (seit C11)
1) Gibt die Länge einer Breitzeichen-Zeichenkette zurück, das heißt die Anzahl der nicht-null Breitzeichen, die dem abschließenden Null-Breitzeichen vorausgehen.
2) Gleich wie (1) , außer dass die Funktion Null zurückgibt, falls str ein Nullzeiger ist, und strsz zurückgibt, wenn das Null-Breitzeichen nicht in den ersten strsz Breitzeichen von src gefunden wurde.
Wie bei allen grenzgeprüften Funktionen ist wcslen_s nur garantiert verfügbar, wenn __STDC_LIB_EXT1__ durch die Implementierung definiert ist und wenn der Benutzer __STDC_WANT_LIB_EXT1__ auf den Integer-Konstantenwert 1 setzt, bevor <stdio.h> eingebunden wird.

Inhaltsverzeichnis

Parameter

str - Zeiger auf den nullterminierten Breitzeichen-String, der untersucht werden soll
strsz - maximale Anzahl der zu untersuchenden Breitzeichen

Rückgabewert

1) Die Länge der nullterminierten Breitzeichenkette str .
2) Die Länge der nullterminierten Breitzeichenkette str bei Erfolg, null falls str ein Nullzeiger ist, strsz falls das Null-Breitzeichen nicht gefunden wurde.

Hinweise

strnlen_s und wcsnlen_s sind die einzigen bounds-checked functions , die keinen Runtime-Constraints-Handler aufrufen. Es handelt sich um reine Hilfsfunktionen, die eingeschränkte Unterstützung für nicht nullterminierte Zeichenketten bereitstellen.

Beispiel

#include <wchar.h>
#include <stdio.h>
int main(void)
{
    wchar_t str[] = L"How many wide characters does this string contain?";
    printf("without null character: %zu\n", wcslen(str));
    printf("with null character: %zu\n", sizeof str / sizeof *str);
}

Ausgabe:

without null character: 50
with null character: 51

Referenzen

  • C11-Standard (ISO/IEC 9899:2011):
  • 7.29.4.6.1 Die wcslen-Funktion (S. 439)
  • K.3.9.2.4.1 Die wcsnlen_s-Funktion (S. 646-647)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.24.4.6.1 Die wcslen-Funktion (S. 385)

Siehe auch

gibt die Länge einer gegebenen Zeichenkette zurück
(Funktion)