2015-04-06 42 views
0

如果以前有人问过我会道歉,但我还没有真正看到这些出现在我的书籍或其他例子中。所以,我走了。如何让字符串向量保持用户输入的空格?

我一直在进入一个纸牌游戏,在懒惰后不断洗牌,我做了一个程序,理论上它为我做。我意识到已经有程序这样做了,但那有什么好玩的呢?关于导致问题的问题。每当我输入一个有两个或多个单词名称的卡片时,它会删除除第一个单词外的所有单词。我知道这会发生,但我不知道如何解决它。更不用说如何将“A,C”存储在向量中并保留空格。

问题:如何在字符串中存储“A,C”这样的字符串并将其放入容器中,并且能够使用机智空格检索它?我在代码中做错了什么,或者我是否使用了错误的工具?

#include <iostream> 
#include <string> 

using namespace std; 

int main() 
{ 
string example = " "; 
cin >> example; //typed eggs and milk, only got eggs 
cout << example << endl; 

} 
+2

你的问题与载体无关。请继续简化您的问题,直到它[最小](http://stackoverflow.com/help/mcve)。 – chris 2015-04-06 01:52:10

+1

@chris它已被重新编辑成简单的方式,仍然能够再现最终产品。 – Episha 2015-04-06 02:03:57

+0

string example =“”; getline(cin,example); found here:http://stackoverflow.com/questions/5455802/how-to-read-a-complete-line-from-the-user-using-cin – EmeraldOverflow 2015-04-06 02:07:37

回答

2

而不是

cin >> example; 

使用时它找到一个空格

std::getline(std::cin, example); 

cin >> example;就会停止阅读。 std::getline将继续读取,直到找到指定的分隔符(默认为'\n')。

More on std::getline

相关问题