用c ++读取输入并分配给不同的变量

时间:2012-03-22 23:44:25

标签: c++ cin

我是一名c ++初学者。我试图从控制台获取一些输入。 myconsole命令位于“动作参数”形式

  • 申请
  • 创建b 1
  • 销毁c

根据输入“请求”“创建”和“销毁”,我的程序将决定要处理的功能。我知道我可以使用cin>>变量来做到这一点。我做了一些研究,然后出来了

    string action;
    while(true){
         cin >> action;
         cout << action << endl;
    }

现在问题是我只能将输入分配给一个变量“action”,如何将输入分配给另一个变量“parameter”并注意参数可能是字符串和整数数据类型。

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

示例:

string str;
int a;
double b;
char c;
cin >> str >> a >> b >> c;

答案 1 :(得分:0)

读取整行可能会更好,稍后将它们分开。字符串流可用于此目的:

#include <string>
#include <sstream>
#include <iostream>

std::string line;
while (std::getline(std::cin, line))
{
    std::istringstream iss(line);
    std::string token;

    while (iss >> token)
    {
       std::cout << "Word: " << token << "\n";
       // ... process tokens; e.g. store in a container
    }
}

答案 2 :(得分:0)

如果要创建全文模式用户界面,请查看CLI工具包: http://alexis.royer.free.fr/CLI/。 这个工具包可以很容易地定义命令行语法(包括序列关键字和参数,还有菜单和其他东西),并使用应该在最后执行的最终例程来插入它们。解析由工具包提供的库完成。