Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      iswdigit

      From cppreference.com
      <c‎ |string‎ |wide
       
       
       
      Null-terminated wide strings
       
      Defined in header<wctype.h>
      int iswdigit( wint_t ch);
      (since C95)

      Checks if the given wide character corresponds (if narrowed) to one of the ten decimal digit characters0123456789.

      Contents

      [edit]Parameters

      ch - wide character

      [edit]Return value

      Non-zero value if the wide character is a numeric character, zero otherwise.

      [edit]Notes

      iswdigit andiswxdigit are the only standard wide character classification functions that are not affected by the currently installed C locale.

      [edit]Example

      Some locales offer additional character classes that detect non-ASCII digits

      Run this code
      #include <locale.h>#include <stdio.h>#include <wchar.h>#include <wctype.h> void test(wchar_t a3,wchar_t u3,wchar_t j3){printf("\t '%lc'  '%lc' '%lc'\n", a3, u3, j3);printf("iswdigit: %d    %d    %d\n",!!iswdigit(a3),!!iswdigit(u3),!!iswdigit(j3));printf("jdigit:   %d    %d    %d\n",!!iswctype(a3,wctype("jdigit")),!!iswctype(u3,wctype("jdigit")),!!iswctype(j3,wctype("jdigit")));} int main(void){wchar_t a3= L'3';// the ASCII digit 3wchar_t u3= L'三';// the CJK numeral 3wchar_t j3= L'3';// the full-width digit 3 setlocale(LC_ALL,"en_US.utf8");puts("In American locale:");    test(a3, u3, j3); setlocale(LC_ALL,"ja_JP.utf8");puts("\nIn Japanese locale:");    test(a3, u3, j3);}

      Possible output:

      In American locale:         '3'  '三' '3'iswdigit: 1    0    0jdigit:   0    0    0 In Japanese locale:         '3'  '三' '3'iswdigit: 1    0    0jdigit:   0    0    1

      [edit]References

      • C23 standard (ISO/IEC 9899:2024):
      • TBD 7.30.2.1.5 The iswdigit function (p: TBD)
      • C17 standard (ISO/IEC 9899:2018):
      • 7.30.2.1.5 The iswdigit function (p: 327)
      • C11 standard (ISO/IEC 9899:2011):
      • 7.30.2.1.5 The iswdigit function (p: 449)
      • C99 standard (ISO/IEC 9899:1999):
      • 7.25.2.1.5 The iswdigit function (p: 395)

      [edit]See also

      checks if a character is a digit
      (function)[edit]
      C++ documentation foriswdigit
      ASCII valuescharacters

      iscntrl
      iswcntrl

      isprint
      iswprint

      isspace
      iswspace

      isblank
      iswblank

      isgraph
      iswgraph

      ispunct
      iswpunct

      isalnum
      iswalnum

      isalpha
      iswalpha

      isupper
      iswupper

      islower
      iswlower

      isdigit
      iswdigit

      isxdigit
      iswxdigit

      decimal hexadecimal octal
      0–8\x0\x8\0\10control codes (NUL, etc.)≠000000000000
      9\x9\11tab (\t)≠00≠0≠000000000
      10–13\xA\xD\12\15whitespaces (\n,\v,\f,\r)≠00≠0000000000
      14–31\xE\x1F\16\37control codes≠000000000000
      32\x20\40space0≠0≠0≠000000000
      33–47\x21\x2F\41\57!"#$%&'()*+,-./0≠000≠0≠0000000
      48–57\x30\x39\60\7101234567890≠000≠00≠0000≠0≠0
      58–64\x3A\x40\72\100:;<=>?@0≠000≠0≠0000000
      65–70\x41\x46\101\106ABCDEF0≠000≠00≠0≠0≠000≠0
      71–90\x47\x5A\107\132GHIJKLMNOP
      QRSTUVWXYZ
      0≠000≠00≠0≠0≠0000
      91–96\x5B\x60\133\140[\]^_`0≠000≠0≠0000000
      97–102\x61\x66\141\146abcdef0≠000≠00≠0≠00≠00≠0
      103–122\x67\x7A\147\172ghijklmnop
      qrstuvwxyz
      0≠000≠00≠0≠00≠000
      123–126\x7B\x7E\173\176{|}~0≠000≠0≠0000000
      127\x7F\177backspace character (DEL)≠000000000000
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=c/string/wide/iswdigit&oldid=148885"

      [8]ページ先頭

      ©2009-2025 Movatter.jp