gpt4 book ai didi

C++ 使用 cin.get 获取一个字符,如何跳过\n 只抓取第一个字符?

转载 作者:行者123 更新时间:2023-11-30 05:36:48 25 4
gpt4 key购买 nike

我正在做一个学校项目,用户应该在这个项目中输入一个选项以获取开关/大小写菜单。我在菜单中制作了一个单独的对象来阅读。该计划是关于生命游戏的。然而,我正在努力如何忽略所有\n 并且仍然只阅读第一个字符。因此,当用户输入\n\n\n R 我喜欢返回 R,就像用户输入\n\n RRR 时一样。但是现在我的代码执行了三次链接到 R 的命令。

char wereld::leesoptie ( ) {    
char keuze = cin.get ( ); //So here the user will imput his \n \n RR
if (keuze == '\n') {
while (keuze == '\n') //I skip the \n's like this
keuze = cin.get ( );
}
return keuze; //The returned value should be only the first real character of the string.
}//leesoptie

接下来是我用来执行 leesoptie 函数的代码:

int wereld::parameters (){
-----
keuze = leesoptie ( );
switch (keuze) {
case 'T': case 't': return 0;
---

最佳答案

char c;
std::cin >> c;

这将读取单个字符,默认情况下忽略任何空格(包括换行符)。 See for more info

关于C++ 使用 cin.get 获取一个字符,如何跳过\n 只抓取第一个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33458056/

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