2010-07-21 339 views
0

例如有代码EOF函数| C

#include <algorithm> 
#include <stdio.h> 
#include <iostream> 



int intcomp(int *x,int *y) { return *x-*y;}; 
int a[10000]; 
int main(void){ 
    int i; int n=0; 
    while (scanf("%d",&a[n])!=EOF) 
      n++; 
    qsort(a,n,sizeof(int),intcomp); 
     for (int i=0;i<n;i++) 
      printf("%d\n",a[i]); 
     return 0; 


} 

如何告诉计算机达到EOF?

+1

EOF是一个宏,而不是一个函数。它通常扩展为'-1'并表示文件结束。你可能需要重新提出你的问题,因为我不清楚你在问什么。 – Lucas 2010-07-21 09:54:17

+0

现在你知道答案了,请重新编辑问题并重新标记它,以便正确反映你的问题。 它与C或C++本身无关,与终端上的IO更多。 – 2010-07-21 11:40:31

回答

1

应使用CTRL + Z组合(或以某种方式输入字符的代码26,例如,通过按下ALT + 2 + 6个额外的键盘上)

6

您是指在交互式输入时输入? 在一个Windows shell中,它自己的一行上按ctrl + z。在* nix shell中,按Ctrl + d。或者只是把你的输入文件放在一个文件中,然后管理它,这样不仅可以在适当的时候检测到eof,还可以使你的测试自动化。