制表符终止位,不太懂这个东西.google得知是空格代替制表符
1 #include <stdio.h> 2 #define TABINC 8 3 4 main() 5 { 6 int c, nb, nt, pos; 7 nb = 0; 8 nt = 0; 9 for(pos = 1; (c = getchar()) != EOF; ++pos) 10 if(c == ' ') 11 { 12 if(pos % TABINC != 0) 13 ++nb; 14 else 15 { 16 nb = 0; 17 ++nt; 18 } 19 }else 20 { 21 for( ; nt > 0; --nt) 22 putchar(' '); 23 if(c == ' ') 24 nb = 0; 25 else 26 for( ; nb > 0; --nb) 27 putchar(' '); 28 putchar(c); 29 if(c == ' ') 30 pos = 0; 31 else if (c == ' ') 32 pos = pos + (TABINC - (pos - 1) % TABINC) - 1; 33 } 34 }