C++ 控制台获取多个变量输入

使用 C++ 中的标准库函数 std::cinstd::string 可以获取控制台输入的文本,并通过字符串处理的方式获取每个变量。

示例代码

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

int main() {
    std::string input;
    std::getline(std::cin, input);  // 获取输入文本

    std::istringstream iss(input);
    std::string token;
    std::vector<std::string> variables;
    while (std::getline(iss, token, ' ')) {  // 分割字符串
        if (token[0] == '-') {  // 获取变量
            variables.push_back(token.substr(1));  // 去掉 '-' 符号
        } 
    }

    // 输出变量
    for (const auto& var : variables) {
        std::cout << var << std::endl;
    }

    return 0;
}

代码说明

  1. 使用 std::getline(std::cin, input); 获取控制台输入的文本。
  2. 使用 std::istringstream 将输入文本转化为字符串流。
  3. 使用 std::getline(iss, token, ' '); 分割字符串流,并将每个单词存入 token 变量中。
  4. 判断 token 是否以 '-' 开头,如果是则将去掉 '-' 符号后的字符串存入 variables 向量中。
  5. 循环遍历 variables 向量,输出每个变量。

运行示例

运行示例代码,并输入文本'aa -bb -cc',则输出如下结果:

bb
cc
C++ 控制台获取多个变量输入

原文地址: https://www.cveoy.top/t/topic/owHf 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录