_strspnp
, , _wcsspnp
_mbsspnp
_mbsspnp_l
Gibt einen Zeiger auf das erste Zeichen in einer bestimmten Zeichenfolge zurück, die nicht in einer anderen angegebenen Zeichenfolge enthalten ist.
Wichtig
_mbsspnp
und _mbsspnp_l
können nicht in Anwendungen verwendet werden, die in Windows-Runtime ausgeführt werden. Weitere Informationen finden Sie im Artikel CRT functions not supported in Universal Windows Platform apps (In Apps für die universelle Windows-Plattform nicht unterstützte CRT-Funktionen).
Syntax
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 Sie einen Zeiger auf das erste Zeichen zurück, in str
dem der Satz von Zeichen nicht charset
in . Jede dieser Funktionen gibt zurückNULL
, wenn str
sie vollständig aus Zeichen besteht.charset
Für diese Routinen ist kein Rückgabewert zur Anzeige eines Fehlers reserviert.
Hinweise
Die _mbsspnp
Funktion gibt einen Zeiger auf das Multibyte-Zeichen zurück, das das erste Zeichen ist, das str
nicht zum Satz von Zeichen in charset
gehört. _mbsspnp
erkennt Multibyte-Zeichenfolgen gemäß der aktuellen Multibyte-Codepage. Die Suche enthält nicht das Beenden von NULL-Zeichen.
Wenn es sich um str
charset
einen Nullzeiger handelt, ruft diese Funktion den ungültigen Parameterhandler auf, wie in der Parameterüberprüfung beschrieben. Wenn die weitere Ausführung zugelassen wird, gibt die Funktion NULL
zurück und setzt errno
auf EINVAL
.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Mapping 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 identisch mit _mbsspnp
anderen. Sie werden nur für diese Zuordnung bereitgestellt und sollten aus keinem anderen Grund verwendet werden. Weitere Informationen finden Sie unter Verwenden von generischen Textzuordnungen und generischen Textzuordnungen.
_mbsspnp_l
ist nahezu identisch, verwendet jedoch stattdessen den übergebenen Gebietsschemaparameter. 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);
}
Output
abbage
Siehe auch
Zeichenfolgenbearbeitung
Gebietsschema
Interpretation von Multibytezeichensequenzen
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