回答編集履歴
3
書式の改善
test
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
|
19
19
|
|
20
20
|
|
21
|
-
そこで、チカラワザになりますが、`JIS_DATA`の各「バイト」の最上位ビットを'1
|
21
|
+
そこで、チカラワザになりますが、`JIS_DATA`の各「バイト」の最上位ビットを'1'にしてしまいましょう。
|
22
22
|
|
23
23
|
そうすれば`JIS_DATA`を「EUC-JP でエンコードされたデータ」とみなすことが可能になるかな?と思います。
|
24
24
|
|
2
書式の改善
test
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
-
JIS X 0208 文字セットの2バイト文字が
|
7
|
+
JIS X 0208 文字セットの2バイト文字が`wchar_t`配列に格納されているものと解釈して話を進めます。
|
8
8
|
|
9
9
|
その配列は「ISO-2022-JP で符号化されたデータ」ではないので、
|
10
10
|
|
@@ -18,9 +18,9 @@
|
|
18
18
|
|
19
19
|
|
20
20
|
|
21
|
-
そこで、チカラワザになりますが、JIS_DATA
|
21
|
+
そこで、チカラワザになりますが、`JIS_DATA`の各「バイト」の最上位ビットを'1`にしてしまいましょう。
|
22
22
|
|
23
|
-
そうすれば
|
23
|
+
そうすれば`JIS_DATA`を「EUC-JP でエンコードされたデータ」とみなすことが可能になるかな?と思います。
|
24
24
|
|
25
25
|
```
|
26
26
|
|
1
コードを修正
test
CHANGED
@@ -26,7 +26,13 @@
|
|
26
26
|
|
27
27
|
for (int i = 0; i < sizeof JIS_DATA / sizeof(wchar_t); i++) {
|
28
28
|
|
29
|
+
if (0 == JIS_DATA[i]) {
|
30
|
+
|
31
|
+
break;
|
32
|
+
|
33
|
+
}
|
34
|
+
|
29
|
-
JIS_DATA[i] |= 0x8080;
|
35
|
+
JIS_DATA[i] |= 0x8080;
|
30
36
|
|
31
37
|
}
|
32
38
|
|