gpt4 book ai didi

c++:如何将字符串的其余部分存储在变量中?

转载 作者:行者123 更新时间:2023-11-28 00:45:33 25 4
gpt4 key购买 nike

大家好,我有一个关于将输出存储到变量的问题。假设我定义了 3 个变量,如下所示:

float num, 
string units,
string rest;

然后用户在控制台中输入:

 12.2
mg
Vitamin

我知道如果我想将它存储在变量中,我必须执行以下操作:

cin >> num >> units >> rest;

但假设用户输入的是 Vitamin A 而不是 Vitamin。

而且我想将 mg 之后的其余字符串存储到“rest”变量中。我该怎么做?

我做了以下事情:

cin >> num >> units;
getline(cin,rest); //stores the rest of the string into rest

但这还在 mg 之后存储空格字符,即如果我输出 rest,它将输出 "Vitamin A"。一开始我不想要这个空间。我该如何实现?

我知道它很长,但我希望我说清楚了。任何帮助或建议都会有所帮助。谢谢,

最佳答案

您可以使用 std::ws 跳过空格

cin >> num >> units;
ws(cin);
getline(cin, rest);

您可以在此处查看实时工作示例:ignore leading whitespace

关于c++:如何将字符串的其余部分存储在变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16391413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com