我做了一個程序,然後我用它從它的輸出創建一個文件,現在我想讓幾個程序之一運行重定向該文件(或管道輸出其他方案)。 我用下面的代碼作爲用於測試的第一程序錯誤管道/從窗口中的文件或命令重定向
int main (int argc, char* argv[])
{
long long int n = 0;
char str[100];
while (str != NULL)
{
fscanf(stdin,"%s\0", str);
printf("%lld\t%s\n", n, str);
n++;
}
return 0;
}
程序正確地執行,直到重定向的文件或管道輸出的最後一行,然後保持無限repearing直到我停止與CTRL-C執行(視窗)。 我不知道爲什麼會發生這種情況,我嘗試刷新標準輸入,標準輸出以及所有我想到的並且沒有運氣的東西。
我做錯了或失蹤?
在此先感謝。
'str!= NULL'永遠不會是錯誤的。查看scanf文檔以查看錯誤/流結束條件的情況。 – Mat