Freigeben über


_strspnp, _wcsspnp, _mbsspnp, _mbsspnp_l

Gibt einen Zeiger auf das erste Zeichen in einer bestimmten Zeichenfolge zurück, das nicht in einer anderen angegebenen Zeichenfolge ist.

Wichtig

_mbsspnp und _mbsspnp_l können nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden.Weitere Informationen finden Sie unter CRT-Funktionen nicht mit /ZW unterstützt.

char *_strspnp(
   const char *str,
   const char *charset
);
wchar_t *_wcsspnp(
   const unsigned wchar_t *str,
   const unsigned wchar_t *charset
);
unsigned char *_mbsspnp(
   const unsigned char *str,
   const unsigned char *charset
);
unsigned char *_mbsspnp_l(
   const unsigned char *str,
   const unsigned char *charset,
   _locale_t locale
);

Parameter

  • str
    Zu suchende mit NULL endende Zeichenfolge.

  • charset
    Mit NULL endender Zeichensatz.

  • locale
    Zu verwendendes Gebietsschema.

Rückgabewert

_strspnp, _wcsspnp und _mbsspnp geben einen Zeiger auf das erste Zeichen in str, zurück, das nicht zum Zeichensatz in charset gehört. Jede dieser Funktionen gibt NULL zurück, wenn str vollständig aus Zeichen von charset besteht*.* Für diese Routinen ist kein Rückgabewert zur Anzeige eines Fehlers reserviert.

Hinweise

Die _mbsspnp-Funktion gibt einen Zeiger auf das Multibytezeichen zurück, das das erste Zeichen in str ist, das nicht zum Zeichensatz in charset gehört. _mbsspnp erkennt Multibyte-Zeichenfolgen gemäß der aktuellen Multibyte-Codepage. Die Suche umfasst keine abschließenden Nullzeichen.

Wenn str oder charset ein NULL-Zeiger ist, ruft diese Funktion den Handler für ungültige Parameter auf, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, gibt die Funktion NULL zurück und setzt errno auf EINVAL.

Zuordnung generischer Textroutinen

Tchar.h-Routine

_UNICODE und _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_tcsspnp

_strspnp

_mbsspnp

_wcsspnp

_strspnp und _wcsspnp sind Breitzeichen- und Einzelbytezeichen-Versionen von _mbsspnp. _strspnp und _wcsspnp verhalten sich genauso wie _mbsspnp; sie werden nur für diese Zuordnung bereitgestellt und sollten nicht für andere Zwecke verwendet werden. Weitere Informationen finden Sie unter dem Thema zum Verwenden von generischen Textzuordnungen und Generische Textzuordnungen.

_mbsspnp_l ist identisch, es werden den Parameter, der in stattdessen übergeben wird. Weitere Informationen finden Sie unter Locale.

Anforderungen

Routine

Erforderlicher Header

_mbsspnp

<mbstring.h>

_strspnp

<tchar.h>

_wcsspnp

<tchar.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

// crt_mbsspnp.c
#include <mbstring.h>
#include <stdio.h>

int main( void ) {
   const unsigned char string1[] = "cabbage";
   const unsigned char string2[] = "c";
   unsigned char *ptr = 0;
   ptr = _mbsspnp( string1, string2 );
   printf( "%s\n", ptr);
}

Ausgabe

abbage

.NET Framework-Entsprechung

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

Siehe auch

Referenz

Zeichenfolgenbearbeitung (CRT)

Locale

Interpretation von Mehrbytezeichensequenzen

strspn, wcsspn, _mbsspn, _mbsspn_l

strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l