程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> c++、cout緩存區問題-C++中的cout的緩存區清空問題

c++、cout緩存區問題-C++中的cout的緩存區清空問題

編輯:編程解疑
C++中的cout的緩存區清空問題

很多地方都看到這樣一個描述“cout有一個緩存區,當用cout向輸出流中插入待輸出內容時,這些待輸出內容並不是立即就被送到輸出設備了,而是先存入到這個緩存區中,當cout遇到endl或者緩存區滿的時候才會向屏幕輸出”請問這句話是對的嗎?我怎麼總感覺不對勁啊,感覺有矛盾啊,如果這個說法是正確的,那麼是不是說當執行輸出語句cout<<a時如果緩存區沒有滿或者沒有遇到endl的時候就不能進行輸出了嗎?是這樣理解嗎?求解啊!!!

最佳回答:


在Unix下的C語言用select函數就可以判斷有無數據。
Windows下網絡也可用select,鍵盤輸入則用_kbhit函數。
MSDN裡的例子:
#include
#include

int main( void )
{
/* Display message until key is pressed. */
while( !_kbhit() )
_cputs( "Hit me!! " );

/* Use _getch to throw key away. */
printf( "\nKey struck was '%c'\n", _getch() );
}
也可以參考http://bbs.csdn.net/topics/390497761

qq_32194415
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved