我有以下計劃,困惑如何標準輸入,輸出和錯誤的工作
void Print()
{
printf("\nCall from Print\n");
}
int main()
{
FILE * pFile;
char mystring [100];
pFile = freopen ("myfile.txt" , "r", stdin);
if (pFile == NULL)
{
perror ("Error opening file");
}
else
{
if (fgets (mystring , 100 , pFile) != NULL)
{
freopen("myfile.txt" , "a", stdout);
Print();
printf("Here it is\n");
//puts (mystring);
}
fclose(stdout);
fclose (pFile);
}
printf("Hello World\n");
return 0;
}
現在,當我execting程序我不能看到控制檯窗口輸出。所有輸出都重定向到myfile.txt
文件。我希望輸出應該同時出現在console
和myfile.txt
之間。
畢竟這是爲什麼printf("Hello World\n")
沒有得到控制檯打印。 如何使它在控制檯中打印?
我上午在Windows的7個工作時,Visual Studio 2010
爲什麼'printf(「Hello World \ n」)'不起作用 –
你已經改變了標準輸出並且你已經關閉了它。 – MOHAMED
@MOHAMMED:我的問題是爲什麼'printf(「Hello World \ n」)'沒有被打印到控制檯 –