std::iswdigit (3) - Linux Manuals
std::iswdigit: std::iswdigit
Command to display std::iswdigit manual in Linux: $ man 3 std::iswdigit
 
NAME
std::iswdigit - std::iswdigit
Synopsis
Defined in header <cwctype>
int iswdigit( wint_t ch );
Checks if the given wide character corresponds (if narrowed) to one of the ten decimal digit characters 0123456789.
If the value of ch is neither representable as a wchar_t nor equal to the value of the macro WEOF, the behavior is undefined.
Parameters
ch - wide character
Return value
Non-zero value if the wide character is an numeric character, zero otherwise.
Notes
std::iswdigit and std::iswxdigit are the only standard wide character classification functions that are not affected by the currently installed C locale.
Example
Some locales offer additional character classes that detect non-ASCII digits
// Run this code
  #include <iostream>
  #include <cwctype>
  #include <clocale>
  void test(wchar_t a3, wchar_t u3, wchar_t j3)
  {
      std::wcout << std::boolalpha
                 << "          '" << a3 << "'   '" << u3 << "'  '" << j3  << "'\n"
                 << "iswdigit "
                 << (bool)std::iswdigit(a3) << "  "
                 << (bool)std::iswdigit(u3) << " "
                 << (bool)std::iswdigit(j3) << '\n'
                 << "jdigit:  "
                 << (bool)std::iswctype(a3, std::wctype("jdigit")) << ' '
                 << (bool)std::iswctype(u3, std::wctype("jdigit")) << ' '
                 << (bool)std::iswctype(j3, std::wctype("jdigit")) << '\n';
  }
  int main()
  {
      wchar_t a3 = L'3';  // the ASCII digit 3
      wchar_t u3 = L'三'; // the CJK numeral 3
      wchar_t j3 = L'3'; // the fullwidth digit 3
      std::setlocale(LC_ALL, "en_US.utf8");
      std::wcout << "In american locale:\n";
      test(a3, u3, j3);
      std::wcout << "\nIn japanese locale:\n";
      std::setlocale(LC_ALL, "ja_JP.utf8");
      test(a3, u3, j3);
  }
Output:
  In american locale:
            '3'   '三'  '3'
  iswdigit true  false false
  jdigit:  false false false
  In japanese locale:
            '3'   '三'  '3'
  iswdigit true  false false
  jdigit:  false false true