C++输出缓冲区问题

我看教材上讲,用cout<<输出数据时,实际上是将数据送到输出缓冲区中保存,直至遇到endl才将缓冲区的数据传送到显示器显示出来,教材强调了endl的重要性,可是我写了很多程序,没有endl也照样输出,请问为什么?谢谢!

endl可以刷新缓冲区,你没发现区别应该是你输出的数据很少,没有装满io流,还可以换行;
cout << "abc";
cout << "def";
没有endl就成了abcdef