c语言中eof怎么判断结束,c语言eof的用法!=eof

http://www.itjxue.com  2023-01-22 16:01  来源:未知  点击次数: 

while(scanf("%s",a)!=EOF)怎么结束读数据?

scanf()函数返回成功赋值的数据项数,读到文件末尾出错时则返回EOF。

如:scanf("%d,%d",

a,

b);

如果a和b都被成功读入,那么scanf的返回值就是2

如果只有a被成功读入,返回值为1

如果a和b都未被成功读入,返回值为0

如果遇到错误或遇到end

of

file,返回值为EOF。

因此,若要用回车控制输入结束,请把scanf放在while条件的外面,用判断a

的长度的方式来控制while循环。

C语言中EOF到底是什么?

EOF是end of file的缩写,表示"文字流"(stream)的结尾。这里的"文字流",可以是文件(file),也可以是标准输入(stdin)。

EOF不是特殊字符,而是一个定义在头文件stdio.h的常量,一般等于-1。

#define EOF (-1)

除了表示文件结尾,EOF还可以表示标准输入的结尾。但是,标准输入与文件不一样,无法事先知道输入的长度,必须手动输入一个字符,表示到达EOF。

C语言 空文件的结束符在哪?

C语言中,文件结束符就是EOF(End of File)。但这并不是一个实实在在存在的东西,是一个标志:若读取到文件末尾的时候,即没有数据可供读取的时候,读文件函数(fgets, fgetc等)就会返回EOF值。C语言中,EOF是个宏,在stdio.h文件中进行定义:#define EOF (-1)即:EOF就是整型数-1。我们写程序,可以通过判断读文件函数的返回值,来判断是否到了文件尾。C语言中,标准输入也是一种特殊的文件,但这个"文件”并没有具体的结束位置,所以,只能人为的创造结束位置 :windows下,在输入的空行位置,按ctrl+z可产生EOFlinux下,在输入时,按ctrl+d可产生EOF

c语言中!=EOF是什么意思?

eod是end

of

file的缩写“!=EOF”表示文件还没有结束“=EOF”表示到文件末尾了。在用函数读入文件数据的时候,函数总会返回一个状态,是读取成功还是失败,那么这个状态怎么表示呢,所以就约定俗成定义一个标识符表示这个状态,就有了EOF。

C语言中,EOF到底是什么东东?

在计算机术语缩写通常为 EOF,在操作系统决定资料源无更多的资料可读取。资料源通常称为档案或串流。 在 C语言,或更精确地说成 C标准函式库,档案存取或其它 I/O 功能可能传回等于象征符号值 (巨集) EOF 指示档案结束的情形发生。实际上 EOF 的值通常为 -1,但它依系统有所不同。巨集 EOF 会在编译原始码前展开实际值给预处理器。 C语言中,EOF常被作为文件结束的标志。还有很多文件处理函数处错误后的返回值也是EOF,因此常被用来判断调用一个函数是否成功。 例如: #include stdio.h int main() { int n; int array[25]; while (scanf("%d",n)!=EOF) { for (int i=0; in; i++) scanf("%d",array+i); for (int i=0; in; i++) printf ("%d ",array[i]); } return 0; }

希望对你有用,祝你顺利!

C语言里,这个语句怎么终止? while((c=getchar())!=EOF) 根本停不下来啊

可以结束,输入ctrl+z回车。

方法是按住ctrl键不放,再按下z键盘,屏幕上会出现”^Z“的样子,然后回车。

如果还不行,可以尝试多输入几次ctrl+z回车。这是因为程序有问题,是输入缓冲问题,循环体中有其他输入语句,其后应该加fflush(stdin);来清除输入缓冲

(责任编辑:IT教学网)

更多

推荐CMS技巧文章