文字セットは1および2バイト文字を持ちます。 1バイト文字は最初のビットとして0を持ちます。 だけバッファに文字が蓄積されます。ある時点で、ユーザがバックスペースを入力したとすると、どのようにして を効率的に削除できますか?1および2バイト文字を含む文字セットのバックスペースを実装します
私の頭に浮かんだ解決策は、1バイト文字(それは最も重要なビットとして0を持つ)を考える必要はなく、2バイト文字について考える必要があり、1と区別できる方法です私はそれを区別するために2バイトの文字に余分なビット(例えば0)を含めると考えましたが、それは多くの文字表現を食べるでしょう。
というアイデアがあります。
この問題は処理できますが、なぜ2つの異なるサイズの文字を使用しているのか尋ねることはできますか?文字のサイズが異なる場合は、チェックする必要がある問題(バッファサイズなど)がたくさんあります。あなたは、あなたのソリューションを簡素化するために、すべての文字を2バイトにすることだけを考慮する必要があります。 – dbeer
これは現実の問題か、ちょうど運動ですか? –
これは第1弾です。すべてのキャラクターを2バイトにするとたくさんの記憶が浪費されることがあります。 – pravs