English 中文(简体)
如何冲淡ole的缓冲?
原标题:How to flush the console buffer?
  • 时间:2011-01-01 07:26:00
  •  标签:
  • c
  • getchar

i) 有一些法典可重复使用:

printf("do you want to continue? Y/N: ");
keepplaying = getchar();

in the next my code is running it doesnt wait for input. i found out that getchar in the seconed time use as the charcter. im gussing this is due to some buffer the sdio has, so it save the last input which was "Y " or "N ".

我的问道是,如何在使用沙子之前绕过缓冲? 这将使我等待回答吗?

最佳回答

挥发投入导致行为不明确。

in(FILE *ostream);

ostream points to an output stream or an update stream in which the most recent operation was not input, the fflush function causes any unwritten data for that stream to be delivered to the host environment to be written to the file; otherwise, the behavior is undefined.

适当吸收投入,如:

int main(void)
{
  int   ch;
  char  buf[BUFSIZ];

  puts("Flushing input");

  while ((ch = getchar()) !=  
  && ch != EOF);

  printf ("Enter some text: ");

  if (fgets(buf, sizeof(buf), stdin))
  {
    printf ("You entered: %s", buf);
  }

  return 0;
}

。 为什么fflush(stdin)是错的

问题回答

在打印前使用fflush()和氟()

如我所知,<代码>flushall不是 POSIX。 为了以标准方式变换独ole的缓冲,你可以简单地利用指挥:

fflush(NULL);

This topic seems to be a bit old but I hope this can still help the others.





相关问题
Fastest method for running a binary search on a file in C?

For example, let s say I want to find a particular word or number in a file. The contents are in sorted order (obviously). Since I want to run a binary search on the file, it seems like a real waste ...

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

Tips for debugging a made-for-linux application on windows?

I m trying to find the source of a bug I have found in an open-source application. I have managed to get a build up and running on my Windows machine, but I m having trouble finding the spot in the ...

Trying to split by two delimiters and it doesn t work - C

I wrote below code to readin line by line from stdin ex. city=Boston;city=New York;city=Chicago and then split each line by ; delimiter and print each record. Then in yet another loop I try to ...

Good, free, easy-to-use C graphics libraries? [closed]

I was wondering if there were any good free graphics libraries for C that are easy to use? It s for plotting 2d and 3d graphs and then saving to a file. It s on a Linux system and there s no gnuplot ...

Encoding, decoding an integer to a char array

Please note that this is not homework and i did search before starting this new thread. I got Store an int in a char array? I was looking for an answer but didn t get any satisfactory answer in the ...

热门标签