Skip to content

Commit 0b7fd16

Browse files
committed
fix typos
ヘッダ名 <uchar> → <cuchar>
1 parent 1052eda commit 0b7fd16

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

lang/cpp11/char16_32.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ char16_t s[] = u"\U00020BB7野家"; // 𠮷野家
4848
- `char32_t`文字リテラルが、基本文字集合とユニバーサルキャラクタ名より多くを含む場合は実装定義となる。
4949
- `char32_t`型の文字列リテラルは、静的ストレージに配置される。
5050
- `char16_t``char32_t`はそれぞれ、[`<cstdint>`](/reference/cstdint.md)ヘッダで定義される[`uint_least16_t`](/reference/cstdint/uint_least16_t.md)[`uint_least32_t`](/reference/cstdint/uint_least32_t.md)と、サイズ、符号の有無、アライメントが同じである。
51-
- `<uchar>`ヘッダでマクロ`__STDC_UTF_16__`が定義される場合、`char16_t`型の値はUTF-16の妥当なコードポイントを持つ。そうでない場合、`char16_t`型の値は実装定義の文字コードとなる。
52-
- `<uchar>`ヘッダでマクロ`__STDC_UTF_32__`が定義される場合、`char32_t`型の値はUTF-32の妥当なコードポイントを持つ。そうでない場合、`char32_t`型の値は実装定義の文字コードとなる。
51+
- `<cuchar>`ヘッダでマクロ`__STDC_UTF_16__`が定義される場合、`char16_t`型の値はUTF-16の妥当なコードポイントを持つ。そうでない場合、`char16_t`型の値は実装定義の文字コードとなる。
52+
- `<cuchar>`ヘッダでマクロ`__STDC_UTF_32__`が定義される場合、`char32_t`型の値はUTF-32の妥当なコードポイントを持つ。そうでない場合、`char32_t`型の値は実装定義の文字コードとなる。
5353

5454

5555
### ユニバーサルキャラクタ名

lang/cpp20/make_char16t_char32t_string_literals_be_utf16_32.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,16 @@ C++11で追加された文字型[`char16_t`と`char32_t`](/lang/cpp11/char16_32.
1414

1515
これまでは、以下のような仕様であった:
1616

17-
- `<uchar>`ヘッダでマクロ`__STDC_UTF_16__`が定義される場合、`char16_t`型の値はUTF-16の妥当なコードポイントを持つ。そうでない場合、`char16_t`型の値は実装定義の文字コードとなる。
18-
- `<uchar>`ヘッダでマクロ`__STDC_UTF_32__`が定義される場合、`char32_t`型の値はUTF-32の妥当なコードポイントを持つ。そうでない場合、`char32_t`型の値は実装定義の文字コードとなる。
17+
- `<cuchar>`ヘッダでマクロ`__STDC_UTF_16__`が定義される場合、`char16_t`型の値はUTF-16の妥当なコードポイントを持つ。そうでない場合、`char16_t`型の値は実装定義の文字コードとなる。
18+
- `<cuchar>`ヘッダでマクロ`__STDC_UTF_32__`が定義される場合、`char32_t`型の値はUTF-32の妥当なコードポイントを持つ。そうでない場合、`char32_t`型の値は実装定義の文字コードとなる。
1919

2020
C++20では、無条件にUTF-16とUTF-32であることが規定される。
2121

2222
なお、`u8`プレフィックスをつけた文字・文字列リテラルは、UTF-8であることがこれまでに規定されていた。
2323

2424

2525
## この機能が必要になった背景・経緯
26-
これまで、`<uchar>`ヘッダのマクロ`__STDC_UTF_16__``__STDC_UTF_32__`が定義されている場合にのみ、`char16_t``char32_t`はUTF-16/UTF-32エンコーディングであると規定されていた。
26+
これまで、`<cuchar>`ヘッダのマクロ`__STDC_UTF_16__``__STDC_UTF_32__`が定義されている場合にのみ、`char16_t``char32_t`はUTF-16/UTF-32エンコーディングであると規定されていた。
2727

2828
しかし、これらが定義されなかった場合にコンパイラがほかのエンコーディングを選択することが疑わしかった。また、`char16_t`の仕様として「サロゲートペア」が含まれているが、その概念をもつ他のよく知られた文字コードはない。単一の文字を32ビットで表現する他のよく知られた文字コードもない。
2929

0 commit comments

Comments
 (0)