Từ bản nháp tài liệu chuẩn C ++ 17:
  30.4.3 Đối tượng luồng hẹp [hẹp.stream.objects]
  
  istream cin;
  
  1 Đối tượng cinkiểm soát đầu vào từ bộ đệm luồng liên kết với đối tượng stdin, được khai báo trong <cstdio>(30.11.1).
  
  2 Sau khi đối tượng cinđược khởi tạo, cin.tie()trả về &cout. Mặt khác, trạng thái của nó giống như yêu cầu đối với basic_ios<char>::init(30.5.5.2).
  
  ostream cout;
  
  3 Đối tượng coutđiều khiển đầu ra tới bộ đệm luồng liên kết với đối tượng stdout, được khai báo trong <cstdio>(30.11.1).
  
  ostream cerr;
  
  4 Đối tượng cerrđiều khiển đầu ra tới bộ đệm luồng liên kết với đối tượng stderr, được khai báo trong <cstdio>(30.11.1).
  
  5 Sau khi đối tượng cerrđược khởi tạo, cerr.flags() & unitbuflà khác không và cerr.tie()trả về &cout. Mặt khác, trạng thái của nó giống như yêu cầu đối với basic_ios<char>::init(30.5.5.2).
  
  ostream clog;
  
  6 Đối tượng clogđiều khiển đầu ra tới bộ đệm luồng liên kết với đối tượng stderr, được khai báo trong <cstdio>(30.11.1).
Thảo luận...
coutviết cho stdout; cerrvà clogđểstderr
Standard Out ( stdout) nhằm mục đích nhận đầu ra không lỗi, không chẩn đoán từ chương trình, chẳng hạn như đầu ra từ quá trình xử lý thành công có thể được hiển thị cho người dùng cuối hoặc truyền trực tiếp vào một số giai đoạn xử lý tiếp theo.
Lỗi Chuẩn ( stderr) dành cho đầu ra chẩn đoán, chẳng hạn như cảnh báo và thông báo lỗi cho biết chương trình không hoặc có thể không tạo ra đầu ra mà người dùng có thể mong đợi. Đầu vào này có thể được hiển thị cho người dùng cuối ngay cả khi dữ liệu đầu ra được chuyển đến giai đoạn xử lý tiếp theo.
cinvà cerrbị ràng buộc vớicout
Cả hai đều xả nước couttrước khi tự xử lý các hoạt động I / O. Điều này đảm bảo các lời nhắc được gửi đến coutđược hiển thị trước khi chương trình chặn đọc đầu vào từ cinđó và đầu ra trước đó tới coutđược xóa trước khi ghi lỗi cerr, điều này giữ cho các thông báo theo thứ tự thời gian của quá trình tạo ra chúng khi cả hai đều được chuyển hướng đến cùng một thiết bị đầu cuối / tệp / Vân vân..
Điều này trái ngược với clog- nếu bạn viết ở đó, nó sẽ không được lưu vào bộ đệm và không bị ràng buộc với bất cứ thứ gì, vì vậy nó sẽ đệm số lượng nhật ký có kích thước phù hợp trước khi xả. Điều này mang lại thông lượng tin nhắn cao nhất, nhưng có nghĩa là các tin nhắn có thể không được hiển thị nhanh chóng cho người tiêu dùng đang đọc thiết bị đầu cuối hoặc theo dõi nhật ký.
               
              
stdout,stdin(chocin) và luồngstderrđó sử dụng theo mặc định. Tôi tin rằngclogchỉcerrvới một thay đổi đệm.