C语言中换行和回车以及eof有什么区别

如题所述

1 在C语言中,换行和回车是相同的概念。

换行符指字符的值为'\n',当输出时起到换行效果,输入的时候,可以用按回车键输入,读入到程序时体现为'\n'。所以回车是换行的另一种说法。

2 EOF是C语言的一个宏定义,其值为-1。
EOF是End Of File的简称,这是一个仅用于输入的概念,即没有输出EOF的说法。
输入时,如果是读文件,当读到文件尾部,即已经读到了文件的最后一个字节,还尝试读操作,就会获得一个EOF错误。
如果是从标准输入进行读取,那么在终端下输入指定组合键,可以实现输入EOF。
在windows下,需要输入Ctrl+Z; 在其它系统下需要输入Ctrl+D。输入时不区分大小写。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-27
EOF就是文件尾的意思,一般被编译器定义为-1

倒不是说文件自己会自动生成一个EOF标志,而是你在用函数读入文件数据的时候,函数总会返回一个状态,是读取成功还是失败,那么这个状态怎么表示呢,所以就约定俗成定义一个标识符表示这个状态,就有了EOF,BOF等等

EOF不是文件中有的。只不过是一个文件操作函数,在文件结尾操作时候返回的错误码。不要认为文件中含有EOF。

换行和回车是在文件中都有的,分别是/n和/r在UNIX和DOS中的文本中有不同的表达。

EOF在UNIX中输入是ctrl+d,在win中是ctrl+z。

也就是说,标准输入/输出在处理文本流时,若取不到字符,即返回错误码EOF,代表文件结束追问

执行后出来的dos窗口,要输入两行字符串而不受回车键的阻截,怎么操作。。

追答

读两次啊,你具体要实现什么我也不清楚
char a[200],b[200];
scanf("%s",a);
scanf("%s",b);

本回答被提问者采纳
相似回答