2010-07-21 53 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,還可以使你的測試自動化。