2010-02-14 21 views
43

"c" có nghĩa là gì trong các tên cout, cin, cerr và clog?"c" có nghĩa là gì trong cout, cin, cerr và clog?

Tôi có thể nói char nhưng tôi chưa tìm thấy bất kỳ điều gì để xác nhận.

+1

@Rexxar Bạn có thể muốn xem xét lại sự chấp nhận của bạn. Đây là một ví dụ tuyệt vời về lý do tại sao bạn không bao giờ nên chấp nhận câu trả lời quá nhanh. Tôi sẽ khuyên bạn nên chờ vài giờ trước khi làm như vậy trong tương lai, để dành thời gian cho câu trả lời tốt hơn để được đăng. –

+0

@Neil Butterworth Tôi đã thay đổi câu trả lời được chấp nhận. – Rexxar

+0

Sự khác nhau giữa "cout" và "out" là gì? –

Trả lời

64

Chữ "c" là viết tắt của "ký tự" vì iostreams ánh xạ giá trị đến và từ các biểu diễn byte (char). [Bjarne Stroustrup's C++ Style and Technique FAQ]

+2

@FredOverflow Tuyệt vời - đây là câu trả lời đúng. –

+0

Tìm tốt, ngay từ miệng ngựa. – Motti

+8

Bah, Stroustrup biết gì về C++;) (+1) – ongle

24

Ban đầu tôi đoán được bảng điều khiểnthis link đã xác nhận điều đó. Nhưng sau khi nhìn thấy quote from Stroustrup, có vẻ như đó là một quan niệm sai lầm, và rằng c là viết tắt của ký tự.

Một điều có lợi cho lý thuyết đó có thể phục vụ như một chỉ báo là thực tế cho mỗi đối tượng dòng (cin, cout, cerr, v.v.) có tương đương, dòng rộng một (wcin, wcout) , wcerr, v.v.).

+4

Thật tuyệt khi có một tài liệu tham khảo từ một tài liệu chuẩn hoặc một trong những tác phẩm của Stroustrup cho điều này - tôi không thể tìm thấy một, và các trang web ngẫu nhiên không đếm, tôi sợ. –

+0

Tôi luôn nghĩ rằng nó được gọi là C như trong C++ :) (havent nghĩ về nó nhiều ...) –

+0

+1 Điểm tốt, nó phải là bàn điều khiển. – fastcodejava

1

'C' có nghĩa là giao diện điều khiển

+3

Cần trích dẫn. – Johnsyweb

+0

Điều đó phổ biến. Nhưng nó thực sự đứng cho nhân vật. Lord Stroustrup đã nói. – ybakos

1

Edit: FredOverflow đã tìm thấy câu trả lời đúng với một liên kết tới trang web Stroustrup.

Bản nháp chuẩn C++ (n1905.pdf trên www.open-std.org, tôi không có liên kết chính xác) dường như cho biết rằng nó xuất phát từ "C": "C standard output" => cout

27,3 tiêu chuẩn đối tượng iostream [lib.iostream.objects]

1- tiêu đề < iostream> tuyên bố rằng đối tượng liên kết đối tượng với các tiêu chuẩn C suối quy định bởi các chức năng tuyên bố trong < cstdio> (27.8.2).

[...]

27.3.1 thu hẹp dòng đối tượng [lib.narrow.stream.objects]

istream cin

1- Đối tượng cin kiểm soát đầu vào từ bộ đệm luồng được liên kết với đối tượng stdin, được khai báo trong < cstdio>.

[...]

+0

Lý do bạn chấp nhận là lý do chính xác. –

Các vấn đề liên quan