2010-02-14 96 views
43

「c」在cout,cin,cerr和clog名稱中的含義是什麼?cout,cin,cerr和clog中的「c」是什麼意思?

我會說char但我還沒有找到任何證實。

+1

@Rexxar你可能要重新考慮你的認可。這是一個很好的例子,你爲什麼不應該太快接受答案。我會建議在未來幾個小時之前這樣做,以便爲發佈更好的答案留出時間。 – 2010-02-14 18:55:38

+0

@尼爾·巴特沃斯我改變了接受的答案。 – Rexxar 2010-02-14 19:44:15

+0

「cout」和「out」有什麼區別? – 2010-02-14 21:44:04

回答

64

「c」代表「字符」,因爲iostream將值映射到字節(char)表示和從字節(char)表示映射值。 [Bjarne Stroustrup's C++ Style and Technique FAQ]

+2

@FredOverflow優秀 - 這是正確的答案。 – 2010-02-14 18:47:07

+0

很好找,直奔馬口。 – Motti 2010-02-14 18:48:38

+8

Bah,Stroustrup對C++有什麼瞭解;)(+1) – ongle 2010-02-14 18:48:38

24

我原來猜對了控制檯this link證實了它。但在看到quote from Stroustrup後,似乎是一種誤解,並且c代表字符

贊成這一理論的一件事情可以作爲一個指標,對於每個流對象(cin,cout,cerr等)來說,都有一個等效的寬帶流(012),wcin,wcout ,wcerr等)。

+4

從標準文檔或Stroustrup的作品之一中獲取參考信息是很好的 - 我找不到它,並且隨機網頁不計算,恐怕。 – 2010-02-14 18:36:39

+0

我一直認爲它在C++中提及C :)(沒有想過它......) – 2010-02-14 18:38:48

+0

+1好點,它必須是控制檯。 – fastcodejava 2010-02-14 18:46:01

1

'C' 是指控制檯

+3

需要引用。 – Johnsyweb 2011-05-07 00:13:19

+0

這很常見。但它確實代表了性格。 Stroustrup爵士已經發言。 – ybakos 2011-10-04 12:39:20

1

編輯:FredOverflow發現朝向Stroustrup的網站的鏈接正確的答案。

C++標準草案(www.open-std.org上的n1905.pdf,我沒有確切的鏈接)似乎表明它來自「C」:「C標準輸出」=> cout

27.3標準iostream對象[lib.iostream.objects]

1-頭<的iostream>聲明 對象與標準C相關聯的對象流由功能提供了用於聲明 在 < cstdio>(27.8.2)。

[...]

27.3.1精細流對象[lib.narrow.stream.objects]

istream的CIN

1-目的CIN控制來自與 對象stdin相關聯的流緩衝區的輸入,在 < cstdio>中聲明。

[...]

+0

你接受的原因是正確的。 – 2010-02-14 19:04:35