轉義序列 | 說明 |
\b | 后退一格(Backspace) |
\t | 水平制表(Tab=4個空格) |
\v | 垂直制表 |
\r | 回車(Enter) |
\f | 換頁 |
\a | 發出鳴響 |
\n | 換行 |
\" | 輸出/輸入雙引號(") |
\' | 輸出/輸入單引號(‘’) |
\? | 輸出/輸入問號(?) |
\\ | 輸出/輸入反斜杠(\) |
\/ | 輸出/輸入斜杠(/) |
Point 1:
\b 的結合使用(Code::Blocks編譯器不包含 \b 標識符)
//Example #include "stdio.h" int main() { int i; for(i=0;i<=5;i++) { printf("%d,",i); } } //上面的代碼輸出為0,1,2,3,4,5, //那么問題來了?怎么去掉5后面的逗號呢?這時候 \b 派上用場了 //修改代碼如下 #include "stdio.h" int main() { int i,j=1; while(j=1) { for(i=0;i<=5;i++) { print("%d,",i); } j=0; } printf("\b"); } //輸出結果為 0,1,2,3,4,5 //逗號就這樣神奇地去掉啦
Point 2:
關於 \b 和 \t 的混合使用
1 #include "stdio.h" 2 int main() 3 { 4 printf("123456789\n"); 5 printf("\t\b\t\b1\n"); 6 printf("\t\t\b\b1\n"); 7 return 0; 8 } 9 //輸出結果如下圖
\b將輸出位置左移一位
\t表示一個tab的距離即1個大空格,相當於4個小空格
上述代碼的理解:
\t\b\t\b 表示前進四個空格然后回退一個空格,做兩次相同操作,於是數字1會定位到數字7對應的位置下方。
\t\t\b\b 表示前進兩個大空格然后再回退兩個大空格,即將\t看成一個tab的效果,回退的是兩個tab,所以最后回到最初位置,也就是數字0對應的位置下方。
PS:你可以自己嘗試一下printf("\t\b\t\b\t\b1"); //看看最后的結果是不是數字1在12的下面。
printf("\t\t\t\b\b\b1"); //看看輸出結果是不時數字1在初始位置,也就是0的下面。