You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将用户输入变量插入到vector<string>的同一个位置?

要实现将用户输入的name、age变量拼接后存入vector<string>的单个元素,核心是将变量值和换行符拼接为单个字符串再存入容器,你原来的写法将变量名写在字符串字面量中,只会输出固定文本,不会替换为变量实际值。

最简实现(兼容所有C++版本)

直接用字符串加号运算符拼接即可,完整可运行代码如下:

#include <iostream>
#include <vector>
#include <string>
using namespace std;

int main(){
    string name, age;
    cout << "Enter name: ";
    getline(cin, name);
    cout << "\nEnter age: ";
    getline(cin, age);
    // 拼接为单个字符串,格式和你最初的示例输出保持一致
    string combine_str = "My name is " + name + ".\n " + age;
    vector<string> B = {combine_str};
    cout << B[0];
    return 0;
}

其他可选实现方式

  • C++20及以上版本可使用std::format做格式化拼接,代码可读性更高:
    #include <format>
    // 省略重复的变量读取逻辑
    string combine_str = format("My name is {}.\n {}", name, age);
    vector<string> B = {combine_str};
    
  • 需要拼接多种不同类型变量(比如数值型的年龄)时,也可以用stringstream实现:
    #include <sstream>
    // 省略重复的变量读取逻辑
    stringstream ss;
    ss << "My name is " << name << ".\n " << age;
    vector<string> B = {ss.str()};
    

内容的提问来源于stack exchange,提问作者muhammad muzaib

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 19:45:05