回答編集履歴
1
修正
answer
CHANGED
@@ -8,7 +8,8 @@
|
|
8
8
|
`'0'`という数値とは何か?というと、
|
9
9
|
コンピュータは文字というものを数値として扱っている事を理解する必要があります。
|
10
10
|
いわゆる文字コードというもので、文字ごとに一文字ずつ、どの文字は何番というふうに数値が割り振られています。
|
11
|
+
C#のchar型はUTF-16という文字コードが使われており、
|
11
|
-
|
12
|
+
`'0'`には、`48`が、`'9'`には`57`が割り当てられています。
|
12
13
|
つまりは、
|
13
14
|
`if (cap >= '0' && cap <= '9') `
|
14
15
|
これは、
|
@@ -17,7 +18,7 @@
|
|
17
18
|
これであれば、ただの数値の比較ですので簡単だと思います。
|
18
19
|
|
19
20
|
実際の数値が何になるか?またその間に何があるかは、文字コードによって異なる可能性があります。
|
20
|
-
上述のような
|
21
|
+
上述のようなUTF-16であれば、48~57番まで(16進数表記では`0030-0039`)をコード表で確認すると、
|
21
22
|
`0123456789`の各文字となります。
|
22
23
|
|
23
24
|
こんな風に中身の動きから考えてゆくとよいかと思います。
|