2013-05-05 32 views
0

有没有关于gccg++的任何标志,将缓冲关闭为stdout? 和python -u一样,在python中关闭了stdoutstdinstderr的缓冲。标志为gcc关闭stdout的缓冲?

+6

不是gcc标志,但请参阅[如何关闭C中stdout的缓冲](http://stackoverflow.com/questions/7876660/how-to-turn-off-buffering-of-stdout-in- C)。 – 2013-05-05 19:06:29

+0

我想通过gcc关闭缓冲而不是通过c。 – 2013-05-05 19:19:21

+2

@ c4rbon,这不是编译器的工作。这是你的代码的工作。 – Mat 2013-05-05 19:25:41

回答

3

作为编译器,GCC仅生成可执行文件。它没有真正的缓冲或甚至流的知识。只有C运行时知道你的stdoutstderr是什么。您需要在运行时告诉C运行时,禁用缓冲。

通过比较,Python运行时是一个解释器。作为一名翻译人员,如果您要求,可以设置流并禁用缓冲区。