我已经看过这个类似的问题,但我仍然想知道是否有另一种方法来停止 1)终端与便携性相呼应,因为这是一项任务,我已经有一个 java 程序崩溃并在我的老师计算机上烧毁 2)在我的程序我搜索一个'\n'
字符然后如果它不是第一个字符使用getchar
然后putchar
直到下一个'\n'
字符在使用重定向时工作正常stdin
但是当我尝试使用没有重定向的程序时回车键总是回显,这与终端回显还是我需要检查不同的字符'\n'
?我也尝试过包括'/r'
并做了很多谷歌搜索,但似乎回声的答案不能通过便携性来完成?
#include <stdio.h>
#include <string.h>
int first_line(char);
int main(){
char c;
while((c = getchar())!=EOF){
first_line(c);
}
return 0;
}
int first_line(char c){
if (c != '\n'||c != '\r'){
putchar(c);
do{
c = getchar();
putchar(c);}
while( c !='\n');
}
return 0;
}
谢谢拉克兰