C++有std::endl
。有誰知道C中的任何東西用於這個?C等同於std :: endl
2
A
回答
9
std::endl
具有打印換行符'\n'
字符,然後刷新輸出流的效果。
的等價的C,如果你打印到標準輸出,將是:
putchar('\n');
fflush(stdout);
但在大多數情況下fflush
是不必要的。
請注意,std::endl
確實不是的目的是提供一個平臺無關的行結束。字符'\n'
已經是一個平臺無關的行結束。當寫入文本流時,它將被轉換爲平臺使用的任何行(Windows的\r\n
,Unix的\n
等)。
5
#include <stdio.h>
putchar ('\n'); /* To the stdout stream. */
printf ("\n"); /* Ditto. */
而對於任意流fp
,
fputc (fp, '\n');
這應該行緩衝和無緩衝流工作。如果你想立即看到結果,完全緩衝的流需要一個fflush(NULL)
。那哪個是哪個?來自C99標準的血統細節:
當最初打開時,標準錯誤流沒有完全緩衝; 如果 和只有當流可以確定不參考 交互式設備時,標準輸入和標準輸出流完全緩衝。
2
相關問題
- 1. 一個std :: endl使三個std :: endl(s)?
- 2. std :: stringstream等同於u32string?
- 3. 等同於%02d與std :: stringstream?
- 4. 應該使用std :: endl嗎?
- 5. 對於負數,%05d等同於std :: stringstream?
- 6. std ::等於reverse_iterator
- 7. 標準庫中是否存在標準std :: endl的等價物?
- 8. std :: getline()如何等同於bool?
- 9. CompilerServices.Operators等同於C#
- 10. 組等同於C#
- 11. std :: cout << x;和std :: cout << x << std :: endl;?
- 12. 什麼是C#等價於std :: vector :: iterators?
- 13. std :: strtoul等效於C++標準庫嗎?
- 14. qt linux「QMAKE_CXXFLAGS + = -std = C++ 11」等效於windows?
- 15. C等同於C++ cin.peek()
- 16. C法FREAD()等同於C#
- 17. 是否可以重寫std :: endl?
- 18. std :: endl和\ n之間的區別
- 19. 標杆換行字符vs std :: endl
- 20. Python格式,字符串格式,換行符(C++ - std :: endl)
- 21. std :: thread和std :: endl沒有預期的輸出
- 22. 如何在自定義std :: ostream類中使用std :: endl
- 23. 一個Zend_Http_Client()等同於C#
- 24. license_finder等同於目標C
- 25. C#等同於PHP file_put_contents
- 26. http://www.cplusplus.com/等同於C#.net
- 27. C等同於PHP`date('YmdHis')`
- 28. 等效於std :: async()的提升
- 29. Std :: multimap等效於delphi
- 30. Java等價於std :: deque
我主要是在尋找一個與平臺無關的行結束,但你做出了一個好點。我沒有意識到endl會刷新輸出流,但'\ n'不一定會刷新標準輸出。 –
@ user1212596:查看我最新答案的最後一段。 –
啊...我學到了很棒的東西! –