std::iswalnum(3)
π NAME π
Okay bestie, welcome to the std::iswalnum(3) page β your C++ Standard Library wide-character alnum vibe check β¨
std::iswalnum β literally std::iswalnum, the function that checks whether a wide character is alphanumeric periodt π
β¨ Synopsis β¨
This cutie is defined in header <cwctype>:
int iswalnum( std::wint_t ch );
So here's the tea: it checks if the given wide character is an alphanumeric character β meaning it's either a number (0123456789), an uppercase letter (ABCDEFGHIJKLMNOPQRSTUVWXYZ), a lowercase letter (abcdefghijklmnopqrstuvwxyz), or any alphanumeric character that's specific to the current locale π
π¨ Bestie, danger zone: if the value ofchis neither representable as awchar_tnor equal to the value of the macroWEOF, the behavior is undefined. Like, do not play with that. π
π Parameters π
chβ the wide character you're vibe-checking π«Ά
π Return value π
Non-zero value if the wide character is an alphanumeric character, zero otherwise. Slay β
π§ Notes π§
ISO 30112 specifies which Unicode characters are included in the POSIX alnum category. That's the lore πβ¨
πΈ Example πΈ
Run this code, bestie:
// Run this code
#include <clocale>
#include <cwctype>
#include <iostream>
int main()
{
wchar_t c = L'\u13ad'; // the Cherokee letter HA ('α')
std::cout << std::hex << std::showbase << std::boolalpha;
std::cout << "in the default locale, iswalnum(" << (std::wint_t)c << ") = "
<< (bool)std::iswalnum(c) << '\n';
std::setlocale(LC_ALL, "en_US.utf8");
std::cout << "in Unicode locale, iswalnum(" << (std::wint_t)c << ") = "
<< (bool)std::iswalnum(c) << '\n';
}
π Possible output π
in the default locale, iswalnum(0x13ad) = false
in Unicode locale, iswalnum(0x13ad) = true
π₯ See also π₯
isalnum(std::locale)β checks if a character is classified as alphanumeric by a locale (function template) πisalnumβ checks if a character is alphanumeric (function) β- C documentation for
iswalnumπ
π ASCII values chart π
Here's the full ASCII values reference chart, kept preformatted so every character, number, and β 0 stays exactly where it belongs πβ¨
ASCII values characters iscntrl isprint isspace
isblank isgraph ispunct isalnum isalpha isupper islower isdigit
isxdigit decimal hexadecimal octal iswcntrl iswprint
iswspace iswblank iswgraph iswpunct iswalnum iswalpha iswupper iswlower
iswdigit iswxdigit 0β8 \x0β\x8 \0β\10 control codes β 0
0 0 0 0 0 0 0 0
0 0 0
(NUL, etc.) 9 \x9 \11
tab (\t) β 0 0 β 0 β 0 0 0 0
0 0 0 0 0
whitespaces 10β13 \xAβ\xD \12β\15
(\n, \v, \f, β 0 0 β 0 0 0 0 0
0 0 0 0 0
\r) 14β31 \xEβ\x1F \16β\37 control
codes β 0 0 0 0 0 0 0 0
0 0 0 0 32 \x20 \40 space
0 β 0 β 0 β 0 0 0 0 0
0 0 0 0 33β47 \x21β\x2F \41β\57
!"#$%&'()*+,-./ 0 β 0 0 0 β 0 β 0 0
0 0 0 0 0 48β57 \x30β\x39 \60β\71
0123456789 0 β 0 0 0 β 0 0 β 0
0 0 0 β 0 β 0 58β64 \x3Aβ\x40 \72β\100
:;<=>?@ 0 β 0 0 0 β 0 β 0 0
0 0 0 0 0 65β70 \x41β\x46 \101β\106
ABCDEF 0 β 0 0 0 β 0 0 β 0
β 0 β 0 0 0 β 0 71β90 \x47β\x5A \107β\132
GHIJKLMNOP 0 β 0 0 0 β 0 0 β 0
β 0 β 0 0 0 0
QRSTUVWXYZ 91β96 \x5Bβ\x60 \133β\140
[\]^_` 0 β 0 0 0 β 0 β 0 0
0 0 0 0 0 97β102 \x61β\x66 \141β\146
abcdef 0 β 0 0 0 β 0 0 β 0
β 0 0 β 0 0 β 0 103β122 \x67β\x7A \147β\172
ghijklmnop 0 β 0 0 0 β 0 0 β 0
β 0 0 β 0 0 0
qrstuvwxyz 123β126 \x7Bβ\x7E \172β\176
{|}~ 0 β 0 0 0 β 0 β 0 0
0 0 0 0 0 127 \x7F \177
backspace β 0 0 0 0 0 0 0
0 0 0 0 0
character (DEL)
Catch you later, bestie β source: http://cppreference.com, version/date: 2024.06.10, page: std::iswalnum(3) π
πβ¨
π¦ where this page comes from
- nixpkgs unstable: stdman 2024.07.05
- opensuse-leap 16.0: stdman 2024.07.05-bp160.1.9 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms