isspace debug assertion failed
-
hi,
ich benutze die funktion isspace().funktioniert alles gut, aber wenn ich ein ü, ä oder ö übergebe, verabschiedet sich das programm im debug modus mit der meldung:
debug assertion failed.isspace checkt doch nur auf bestimmte chars? was ist denn so schlimm, wenn ein sonderzeichen kommt - es is ja kein whitespace zeichen
-
#include <ctype.h> int main () { isspace ('ä'); return 0; }Kompiliert bei mir mit:
test2.c:6:31: Warnung: Zeichenkonstante mit mehreren ZeichenUnd läuft ohne Probleme. Der Warnung ist zu entnehmen, dass das ä als zwei Zeichen gewertet wird, wodurch es wahrscheinlich nicht richtig übergeben wird. Vllt. einfach mal mit
strcmpversuchen?
-
Wieso nicht einfach
char ch = /* ... */; if (ch == ' ') { // ... }?
-
isspace returns a non-zero value if c is a white-space character (0x09 – 0x0D or 0x20).
-
Badestrand schrieb:
isspace returns a non-zero value if c is a white-space character (0x09 – 0x0D or 0x20).
Was soll uns das sagen?
-
http://www.cplusplus.com/reference/clibrary/cctype/isspace.html
In C++, a locale-specific template version of this function (isspace) exists in header <locale>.