評価8: 配列と文字列
評価の目的
学習者がZigの配列型と文字列処理を正しく理解し使用できるかを評価します。
学習目標
- 固定長配列の宣言と初期化を理解する
- スライスの作成と操作を習得する
- 文字列リテラルとバイト配列の違いを理解する
- std.memの文字列関数を使用できる
- [ ] 配列サイズがコンパイル時に決定されている
- [ ] スライスの範囲が配列の境界内
- [ ] 文字列比較に == を使用していない
- [ ] ヌル終端の有無を正しく認識している
- [ ] Unicodeの扱いが適切
- 必須要件で64点以上(80%)
- 境界外アクセスがないこと
評価項目
必須要件 (80点)
| 項目 | 配点 | 基準 |
|---|---|---|
| 配列の初期化 | 20点 | 正しい初期化構文 |
| スライス操作 | 20点 | [start..end] の正しい使用 |
| 文字列比較 | 20点 | std.mem.eql の使用 |
| 配列の反復 | 20点 | for ループでの正しい反復 |
ボーナス要件 (20点)
| 項目 | 配点 | 基準 |
|---|---|---|
| センチネル配列 | 10点 | [_:0]u8 の使用 |
| 多次元配列 | 10点 | ネストした配列の処理 |