タブ文字(\t)には何個のスペースが必要ですか? 質問する

タブ文字(\t)には何個のスペースが必要ですか? 質問する

テキスト描画機能を実装したいのですが、どのよう\tに動作するのかよくわかりません。つまり、 にいくつのスペースを印刷すればよいのかわかりません\t

私は次のアルゴリズムを思いつきました:

a) それぞれは\t最大NUMBER_OF_SPACES_FOR_TABスペースを表します。b) が\t最後の行の対応する位置に現れる場合、この行は最後の行\tの に揃えられる必要があります。\t

例:

printf("a\t\tb\n");
printf("\t\tc\n");

次のように印刷されます:

a11112222b
34444c

どこ:

1.数字は位置iのスペースを表します\ti

2.NUMBER_OF_SPACES_FOR_TAB == 4

標準的なアルゴリズムを知っている人はいますか? よろしくお願いします。

ベストアンサー1

タブ文字は次の文字に進みますタブストップ歴史的にはタブ ストップは 8 文字ごとでしたが、今日ではより小さい値が一般的に使用されており、ほとんどのエディターで設定できます。

出力は次のようになると予想されます。

123456789
a       b
        c

アルゴリズムは、列数をゼロから開始し、各文字を出力するごとに増加します。タブに到達すると、n-(c%n)スペースを出力します。ここで、cは列番号 (ゼロベース) で、nはタブ間隔です。

おすすめ記事