- //去掉空行.c -- 去掉空行
- #include <stdio.h>
- int main(void)
- {
- int ch;
- _Bool allow_enter = 0;
- printf("%hhx\\n", '—');
- while ((ch = getchar()) != EOF)
- {
- if (ch != ' ' && ch != '\\t' && ch != '\\n' && ch != 161u)//遇到非空白字符,输出并允许输入回车
- {
- allow_enter = 1;//开关1
- putchar(ch);
- }
- else if (ch == '\\n' && allow_enter)//允许回车时遇到回车,输出并不允许输入回车
- {
- allow_enter = 0;//开关2
- putchar(ch);
- }
- else if (ch == '\\n' && !allow_enter)//不输出重复回车
- ;
- else if (ch == ' ' || ch == '\\t' || ch == 161u)
- putchar(ch);
- }
- return 0;
- }
- //该片段来自于http://www.codesnippet.cn/detail/1707201513152.html
来源: http://www.codesnippet.cn/detail/1707201513152.html