C - 更改stdin并等待用户输入

时间:2017-01-06 18:32:36

标签: c

我有以下代码:

#include <stdio.h>

int main()
{
   char c = 0;
   fclose(stdin);
   stdin = fopen("newin", "r");
   if(stdin != NULLL)
   {
      scanf("%c", &c);
      printf("%d", c);
   }
   else
       printf("Error");
}

我希望我的程序等待stdin文件的更改。我把它创建为空白,但它返回0.

如果像一个&#39; a&#39;它中的char就像它应该打印97一样。

如何让scanf等待文件中的更改,就像等待我在终端窗口中写一样?

1 个答案:

答案 0 :(得分:1)

  

如何让scanf等待文件中的更改,就像等待我在终端窗口中写一样?

你不能。

来自stdin的输入和来自磁盘的文件的处理方式不同。当您从文件中读取文件时,文件必须按顺序排列,然后才能打开文件进行读取。