_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)
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