成炭

2010-09-24 20 views
0

我的問題閱讀char是有點怪,但怎麼可能讀通過字符鍵盤字符一些字符串,而無需使用scanf()getchar()只能使用operator<<,比如我要改變每一封信a我讀*在此先感謝成炭

回答

2
​​
+0

'push_back()'方法可以由串聯替換:'output + = c;'。這可能是更自然的,因爲它是一個附加。 – 2010-09-24 16:53:42

+0

呼叫良好。我一直呆在C地久了。 – 2010-09-24 20:30:02

0

嘗試寫出一種字符。

char cReadFromStream; 

stream >> cReadFromStream; 
0

你不能。然而,如果你的意思是你正在尋找一個使用C++ iostreams而不是C stdio函數的解決方案,那麼使用cin.get()這是C++ iostreams等價於getchar的方法。

1

根據你的目的,你會發現它足以做到這一點:

#include <iostream> 
#include <iomanip> 

char c; 

std::cin >> std::noskipws; 

while (std::cin >> c) 
    std::cout << c == 'a' ? '*' : c; 

爲noskipws的進一步的細節,這一點至關重要否則運營商>>查看http://www.cplusplus.com/reference/iostream/manipulators/noskipws/將跳過空格,製表符和換行符,直到它發現其他字符放在'c'中,導致所有前面提到的空白字符都從輸出中刪除。