gpt4 book ai didi

c++ - 如何正确地将标准输入中的值读入变量

转载 作者:行者123 更新时间:2023-11-30 03:46:59 25 4
gpt4 key购买 nike

我正在尝试使用这种方法读取每个玩家的名字:

string Jogador::askname(){
string aux;
cout<<getname()<<" Insira o seu nome: ";
cin.get();
//getline(cin,aux);
//gets(aux);
cin.getline(aux,sizeof aux,'\n');
//setname(aux);
cout<<endl;
return aux;
}

它在第一次调用时工作正常,但当我再次调用它时,它会截断字符串的第一个字母。我试过使用 cin.get()/cin.ignore(),似乎没有任何效果。有什么建议么?

最佳答案

我假设你想从键盘获取 aux

std::getline 接受一个流和一个字符串。直到换行符的流内容被放入字符串中。

因此,你可以这样写:

std::string Jogador::askname() { 
std::string aux;
std::cout << " Insira o seu nome: " << std::endl;
std::getline(std::cin, aux);
//this->name = aux; // This sets the name. Now you don't need `setname`
return aux;
}

关于c++ - 如何正确地将标准输入中的值读入变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33883279/

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