質問: 現在、「苦しんで覚えるC言語」で勉強をしているプログラミング初心者です。 ¥tについて調べて「¥tを一つ挿入するとTABキーを一回押した分だけ空欄になる」と解釈していましたが、上記のサイトには下の画像のように書いてありました。 ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/30e7238c856bc4ce735601d9a35d111f.png) これと全く同じようにプログラミングすると実行結果は同じようになったので、「¥tを挿入すると、¥tの後ろの頭がそろう」のかな?と思い下の画像のように表示される言葉を変えてみると、頭がそろわなくなりました。![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/3c88dc1a1bac954bd7245bb30a0e5b02.png) ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/803b302b1906f96f398e1e7ecb974822.png) なにが原因でしょうか?また、¥tはどのように使えばいいのでしょうか?
回答: ¥t はデフォルトで「半角◯文字分」のスペースが挿入されるものだと思います。 が、それまでに入力されている文字数もカウントし、◯文字の倍数になるように調整してスペースを挿入します。 ++++++++++2018/04/25 追記++++++++++++ 正確には、現在のカーソル位置から最短距離にある次の基準線まで進む。 基準線はエディタにより明示的に表示されていたり、そうでなかったりするが 基本的には4文字か8文字分で設定されている。 +++++++++++++++++++++++++++++++++++ 最初のC言語での頭揃えが正常に使用できているのは、以下のような状態だからだと思われます。 ※以下、文字数にインデックスを貼ります。また、¥tを「半角4文字分」と想定しております。 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | W | i | n | d | o | w | s | | M | i | c | r | o | s | o | f | t | | M | a | c | O | S | | | | A | p | p | l | e | | | | | 説明が難しいので表にさせていただきましたが、 "Windwos Microsoft"の場合、¥tまでに入力されているのが 7 文字であるため、 7以降の最小の「4の倍数」である"8"に揃うように 1 文字分のスペースが挿入されています。 "MacOS Apple"の場合、¥tまでに入力されているのが 5 文字であるため、 5以降の最小の「4の倍数」である"8"に揃うように 3 文字分のスペースが挿入されています。 上記のように考え、全角文字を半角文字2文字分とした場合、 ある日=6文字 クマさんに=10文字 となります。 ¥tを足した実行結果を見ると ある日¥t=半角8文字 くまさんに¥t=半角16文字 となっているため、この場合の¥tは「半角スペース8文字分」となっているはずです。 説明力不足で申し訳ないですが、使い方が見えてくると幸いです。