A. C语言中如何在命令行中输入EOF,即文本结束符
没法输入
不过有个替代的方法,Ctrl+Z,虽然并不是EOF
但是scanf检测到这个符号,会自动返回EOF
注意getchar之类没法检测到
B. c语言程序设计 怎么以输入EOF结束
EOF(End Of File)是C语言中的文件结束标志符。当C语言输入函数获取到文件结尾标志时,会通过返回值的方式体现该值。
所以要以输入EOF为结束,就需要判断输入函数的返回值。
EOF定义在stdio.h中,与常用的输入函数相同,所以不需要额外引用头文件。
以下根据输入函数不同,分别说明EOF的判断。
1 getchar
getchar函数的功能是读入一个字符。适用于逐个字符输入的情况。
其返回值为int型,常见的做法是赋值给char型变量,但如果要检查EOF,则必须将返回值赋值给int型。
代码:
intc;
while(1)
{
c=getchar();//读入一个字符。
if(c==EOF)break;//如果遇到EOF则退出循环,即结束输入。
}
2 scanf
scanf是最常用的C语言输入,其作用为格式化输入,可以用来输入各种类型的变量值。
以int型为例:
intc,ret;
while(1)
{
ret=scanf("%d",&c);//读入一个整型值。
if(ret==EOF)break;//如果遇到EOF则退出循环,即结束输入。注意判断的是返回值,而不是读入的变量。
}
3 gets
gets作用是读入一行数据,存到字符数组中,并把读到的换行符转换为字符串结束符。
正常情况下其返回值为传入的指针,当遇到EOF时,其返回NULL(空指针)。
所以用gets读入时可以这样判断:
chars[100];
while(1)
{
if(gets(s)==NULL)break;//当gets返回NULL时代表遇到EOF,结束输入。
}
当输入为文件时,遇到文件结尾C语言可以自动识别EOF,但如果输入为命令行交互模式,那么需要手动输入EOF. 在windows平台输入EOF的方法为,同时按下ctrl和z键。如果是unix/linux平台,则需要同时按下ctrl+d键。
C. 在C中,EOF具体指的是什么while((ch=getchar())!=EOF)这句话要怎么才能在命令行上让它终止
EOF是end of file的缩写,即文件尾,在windows下,要按CTRL+Z,然后回车来终止!
D. cat << EOF 命令
相信cat这个命令大家都很熟悉,可以查看一个文件的内容,但是cat << EOF这个呢,我当时看到的时候有点蒙。
cat << EOF的意思是以EOF输入字符为标准输入结束,就是当你输入cat << EOF的时候,你可以随意输入字符,但是当输入EOF的时候就结束了。
我们也可以将输入的内容写入文件 cat << EOF > a.txt 。
E. c语言中的EOF
EOF是End Of File的意思,在C语言中定义的一个宏,用作文件结束标志。从数值角度看,就是-1。
F. 数据库 eof()命令的使用
f和t指的应该是 false和true
你是在什么环境下的?
应该是和你所用的环境有关
G. c语言eof是什么意思
比如的程序在命令行需要输入,输入完回车,标准输入就到了eof
a=getchar()
if a不等于 eof
printf a
收到真麻烦,注意标准输入是一个文件,你输入的字符放进一个文件中
H. C语言如何输入EOF
windows:
首先在最后一行结束后(此时未换行)输入ENTER键,新起一行,再输入ctrl+z,再输入时ENTER键即可。
Linux:
直接按CTRL+D快捷键
示例:
#include<iostream>
using namespce std;
void main()
{
int a;
while(cin >>a)
{
;//循环输入的代码块
}
}
C语言中,当把数据以二进制形式存放到文件中时,就会有-1值的出现,此时不能采用EOF作为二进制文件的结束标志。为解决这个问题,ANSI C提供一个feof函数,用来判断文件是否结束。
如果遇到文件结束,函数feof(fp)的值为1,否则为0.feof函数既可用以判断二进制文件是否结束,也可以用以判断文本文件是否结束。
例如:编写程序,用于把一个文本文件(源文件)复制到另一个文件(目的文件)中。源文件名为file_a.dat,目的文件名为file_b.dat。程序如下:
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
void file(FILE *,FILE *);
main ( )
{
FILE*fpin,*fpout;
fpin =fopen ("file_a.dat","r"); /*打开输入文件*/
fpout = fopen ("file_b.dat","w"); /*打开输出文件*/
file( fpin,fpout ); /*把fpin所指文件中的内容输出到fpout所指文件中*/
fclose ( fpin );fclose ( fpout ); /*关闭输入输出文件*/
}
void file( FILE *fpin, FILE *fpout )
{
char ch;
ch = getc ( fpin ); /*先读一次文件再去判文件是否结束*/
while ( !feof( fpin ) ) /*当未到文件末尾是进行循环*/
{
putc ( ch, fpout ); ch= getc ( fpin );} /*逐个字符进行复制*/
}
I. linux解压 归档文件中异常的 EOF
linux解压归档文件中异常的EOF,是设置错误造成的,解决方法如下;
1、首先找到压缩文件夹,打开文件夹所在的目录路径。如果它位于文档目录下,打开“文档”文件夹。
J. eof是什么意思
EOF是一个计算机术语,为End Of File的缩写,在操作系统中表示资料源无更多的资料可读取。资料源通常称为档案或串流。通常在文本的最后存在此字符表示资料结束。
在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。
在文本文件中,数据都是以字符的ASCII代码值的形式存放。我们知道,ASCII代码值的范围是0~127,不可能出现-1,因此可以用EOF作为文件结束标志。
工作原理:
从一个终端的输入从来不会真的“结束”(除非设备被断开),但把从终端输入的数据分区成多个“文件”却很有用,因此一个关键的序列被保留下来来指明输入结束。
在UNIX和AmigaDOS中,将击键翻译为EOF的过程是由终端的驱动程序完成的,因此应用程序无需将终端和其它输入文件区分开来。Unix平台的驱动程序在行首传送一个传输结束字符(Control-D,ASCII编码为为04)来指明文件结束。
在AmigaDOS中,驱动程序传送一个Control-来指明文件结束(而Control-D被用作中断字符)。要向输入流中插入一个真正的Control-D字符,用户需要把一个“引用”命令字符放在它的前面(通常是Control-V,表示下一个字符不作为控制字符,而是按照字面量使用)。