summaryrefslogtreecommitdiff
path: root/devdocs/c/string%2Fwide%2Fiswdigit.html
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2024-04-07 13:41:34 -0500
committerCraig Jennings <c@cjennings.net>2024-04-07 13:41:34 -0500
commit754bbf7a25a8dda49b5d08ef0d0443bbf5af0e36 (patch)
treef1190704f78f04a2b0b4c977d20fe96a828377f1 /devdocs/c/string%2Fwide%2Fiswdigit.html
new repository
Diffstat (limited to 'devdocs/c/string%2Fwide%2Fiswdigit.html')
-rw-r--r--devdocs/c/string%2Fwide%2Fiswdigit.html145
1 files changed, 145 insertions, 0 deletions
diff --git a/devdocs/c/string%2Fwide%2Fiswdigit.html b/devdocs/c/string%2Fwide%2Fiswdigit.html
new file mode 100644
index 00000000..f65568b9
--- /dev/null
+++ b/devdocs/c/string%2Fwide%2Fiswdigit.html
@@ -0,0 +1,145 @@
+ <h1 id="firstHeading" class="firstHeading">iswdigit</h1> <table class="t-dcl-begin"> <tr class="t-dsc-header"> <th> Defined in header <code>&lt;wctype.h&gt;</code> </th> <th> </th> <th> </th> </tr> <tr class="t-dcl"> <td> <pre data-language="c">int iswdigit( wint_t ch );</pre>
+</td> <td class="t-dcl-nopad"> </td> <td> <span class="t-mark-rev t-since-c95">(since C95)</span> </td> </tr> </table> <p>Checks if the given wide character corresponds (if narrowed) to one of the ten decimal digit characters <span class="nu19">0123456789</span>.</p>
+<h3 id="Parameters"> Parameters</h3> <table class="t-par-begin"> <tr class="t-par"> <td> ch </td> <td> - </td> <td> wide character </td>
+</tr>
+</table> <h3 id="Return_value"> Return value</h3> <p>Non-zero value if the wide character is a numeric character, zero otherwise.</p>
+<h3 id="Notes"> Notes</h3> <p><code>iswdigit</code> and <code><a href="iswxdigit" title="c/string/wide/iswxdigit">iswxdigit</a></code> are the only standard wide character classification functions that are not affected by the currently installed C locale.</p>
+<h3 id="Example"> Example</h3> <div class="t-example">
+<p>Some locales offer additional character classes that detect non-ASCII digits</p>
+<div class="c source-c"><pre data-language="c">#include &lt;locale.h&gt;
+#include &lt;stdio.h&gt;
+#include &lt;wchar.h&gt;
+#include &lt;wctype.h&gt;
+
+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 3
+ wchar_t u3 = L'三'; // the CJK numeral 3
+ wchar_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);
+}</pre></div> <p>Possible output:</p>
+<div class="text source-text"><pre data-language="c">In American locale:
+ '3' '三' '3'
+iswdigit: 1 0 0
+jdigit: 0 0 0
+
+In Japanese locale:
+ '3' '三' '3'
+iswdigit: 1 0 0
+jdigit: 0 0 1</pre></div> </div> <h3 id="References"> References</h3> <ul>
+<li> C23 standard (ISO/IEC 9899:2023): </li>
+<ul><li> TBD 7.30.2.1.5 The iswdigit function (p: TBD) </li></ul>
+<li> C17 standard (ISO/IEC 9899:2018): </li>
+<ul><li> 7.30.2.1.5 The iswdigit function (p: 327) </li></ul>
+<li> C11 standard (ISO/IEC 9899:2011): </li>
+<ul><li> 7.30.2.1.5 The iswdigit function (p: 449) </li></ul>
+<li> C99 standard (ISO/IEC 9899:1999): </li>
+<ul><li> 7.25.2.1.5 The iswdigit function (p: 395) </li></ul>
+</ul> <h3 id="See_also"> See also</h3> <table class="t-dsc-begin"> <tr class="t-dsc"> <td> <div><a href="../byte/isdigit" title="c/string/byte/isdigit"> <span class="t-lines"><span>isdigit</span></span></a></div> </td> <td> checks if a character is a digit <br> <span class="t-mark">(function)</span> </td>
+</tr> <tr class="t-dsc"> <td colspan="2"> <span><a href="https://en.cppreference.com/w/cpp/string/wide/iswdigit" title="cpp/string/wide/iswdigit">C++ documentation</a></span> for <code>iswdigit</code> </td>
+</tr> </table> <table class="wikitable"> <tr> <th colspan="3"> ASCII values </th> <th rowspan="2"> characters </th> <th rowspan="2"> <p><a href="../byte/iscntrl" title="c/string/byte/iscntrl"><code>iscntrl</code></a><br> <a href="iswcntrl" title="c/string/wide/iswcntrl"><code>iswcntrl</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isprint" title="c/string/byte/isprint"><code>isprint</code></a><br> <a href="iswprint" title="c/string/wide/iswprint"><code>iswprint</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isspace" title="c/string/byte/isspace"><code>isspace</code></a><br> <a href="iswspace" title="c/string/wide/iswspace"><code>iswspace</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isblank" title="c/string/byte/isblank"><code>isblank</code></a><br> <a href="iswblank" title="c/string/wide/iswblank"><code>iswblank</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isgraph" title="c/string/byte/isgraph"><code>isgraph</code></a><br> <a href="iswgraph" title="c/string/wide/iswgraph"><code>iswgraph</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/ispunct" title="c/string/byte/ispunct"><code>ispunct</code></a> <br> <a href="iswpunct" title="c/string/wide/iswpunct"><code>iswpunct</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isalnum" title="c/string/byte/isalnum"><code>isalnum</code></a> <br> <a href="iswalnum" title="c/string/wide/iswalnum"><code>iswalnum</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isalpha" title="c/string/byte/isalpha"><code>isalpha</code></a> <br> <a href="iswalpha" title="c/string/wide/iswalpha"><code>iswalpha</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isupper" title="c/string/byte/isupper"><code>isupper</code></a><br> <a href="iswupper" title="c/string/wide/iswupper"><code>iswupper</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/islower" title="c/string/byte/islower"><code>islower</code></a><br> <a href="iswlower" title="c/string/wide/iswlower"><code>iswlower</code></a></p>
+</th> <th rowspan="2"> <p><a href="../byte/isdigit" title="c/string/byte/isdigit"><code>isdigit</code></a><br> <strong class="selflink"><code>iswdigit</code></strong></p>
+</th> <th rowspan="2"> <p><a href="../byte/isxdigit" title="c/string/byte/isxdigit"><code>isxdigit</code></a><br> <a href="iswxdigit" title="c/string/wide/iswxdigit"><code>iswxdigit</code></a></p>
+</th>
+</tr> <tr> <th> decimal </th> <th> hexadecimal </th> <th> octal </th>
+</tr> <tr> <td> 0–8 </td> <td> <code>\x0</code>–<code>\x8</code> </td> <td> <code>\0</code>–<code>\10</code> </td> <td> control codes (<code>NUL</code>, etc.) </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 9 </td> <td> <code>\x9</code> </td> <td> <code>\11</code> </td> <td> tab (<code>\t</code>) </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 10–13 </td> <td> <code>\xA</code>–<code>\xD</code> </td> <td> <code>\12</code>–<code>\15</code> </td> <td> whitespaces (<code>\n</code>, <code>\v</code>, <code>\f</code>, <code>\r</code>) </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 14–31 </td> <td> <code>\xE</code>–<code>\x1F</code> </td> <td> <code>\16</code>–<code>\37</code> </td> <td> control codes </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 32 </td> <td> <code>\x20</code> </td> <td> <code>\40</code> </td> <td> space </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 33–47 </td> <td> <code>\x21</code>–<code>\x2F</code> </td> <td> <code>\41</code>–<code>\57</code> </td> <td> <code>!"#$%&amp;'()*+,-./</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 48–57 </td> <td> <code>\x30</code>–<code>\x39</code> </td> <td> <code>\60</code>–<code>\71</code> </td> <td> <code>0123456789</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td>
+</tr> <tr> <td> 58–64 </td> <td> <code>\x3A</code>–<code>\x40</code> </td> <td> <code>\72</code>–<code>\100</code> </td> <td> <code>:;&lt;=&gt;?@</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 65–70 </td> <td> <code>\x41</code>–<code>\x46</code> </td> <td> <code>\101</code>–<code>\106</code> </td> <td> <code>ABCDEF</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td>
+</tr> <tr> <td> 71–90 </td> <td> <code>\x47</code>–<code>\x5A</code> </td> <td> <code>\107</code>–<code>\132</code> </td> <td> <code>GHIJKLMNOP</code><br><code>QRSTUVWXYZ</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 91–96 </td> <td> <code>\x5B</code>–<code>\x60</code> </td> <td> <code>\133</code>–<code>\140</code> </td> <td> <code>[\]^_`</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 97–102 </td> <td> <code>\x61</code>–<code>\x66</code> </td> <td> <code>\141</code>–<code>\146</code> </td> <td> <code>abcdef</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td>
+</tr> <tr> <td> 103–122 </td> <td> <code>\x67</code>–<code>\x7A</code> </td> <td> <code>\147</code>–<code>\172</code> </td> <td> <code>ghijklmnop</code><br><code>qrstuvwxyz</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 123–126 </td> <td> <code>\x7B</code>–<code>\x7E</code> </td> <td> <code>\172</code>–<code>\176</code> </td> <td> <code>{|}~</code> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr> <tr> <td> 127 </td> <td> <code>\x7F</code> </td> <td> <code>\177</code> </td> <td> backspace character (<code>DEL</code>) </td> <td class="table-yes">
+<b><code>≠0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td> <td class="table-no"> <b><code>0</code></b> </td>
+</tr>
+</table> <div class="_attribution">
+ <p class="_attribution-p">
+ &copy; cppreference.com<br>Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.<br>
+ <a href="https://en.cppreference.com/w/c/string/wide/iswdigit" class="_attribution-link">https://en.cppreference.com/w/c/string/wide/iswdigit</a>
+ </p>
+</div>