C には次のようなエスケープ文字がある。
\b | バックスペース |
\f | ページ送り |
\n | 改行 |
\r | 復帰 |
\t | 水平タブ |
\” | 二重引用符 |
\’ | 引用符 |
\0 | ヌル |
\\ | 円マーク |
\v | 垂直タブ |
\a | ベル |
\? | 疑問符 |
\N | 8進定数(Nは8進数) |
\xN | 16進定数(Nは16進数) |
このうち \n はもう使っている。あとは引用符とか水平タブとかがよく使いそうかな。
特に重要なのは \0 (ヌル文字)だ。C で文字列を扱うときには終端文字としてヌル文字が必要になる。これはそのうち出てくるはず。
ところで上のとおりだとすると8進数の0も \0 になるんだけど、それってどうなんだろ。もっとも8進数って使いどことがわからないけど。
あと、エスケープ文字はあくまで文字定数なので、char 型の変数に代入するときは引用符で囲む必要がある。
char ch; ch = '\t';
みたいに。
次のプログラムは、1 から 10 に対して、各行にその数、2乗、3乗を表示する。
#include int main(void) { int i; for (i = 1; i < 11; i++) { printf("%d\t%d\t%d\n", i, i * i, i * i * i); } return 0; }
実行結果:
takatoh@nightschool $ ./sample_2_6 1 1 1 2 4 8 3 9 27 4 16 64 5 25 125 6 36 216 7 49 343 8 64 512 9 81 729 10 100 1000