C++ 如何输入多个字母并在某个字母(q或q)后停止?
我被分配了一个家庭作业来输入用户想要的任意多个字母,并在输入q或q后停止。然后程序应该输出这样的字符串中有多少个元音。我们应该使用_getche()函数,但我有MacBook,所以它不起作用 我试过做conio.h。 我也尝试过使用cin.get()和getchar(),但都不起作用。我认为您需要它:C++ 如何输入多个字母并在某个字母(q或q)后停止?,c++,macos,C++,Macos,我被分配了一个家庭作业来输入用户想要的任意多个字母,并在输入q或q后停止。然后程序应该输出这样的字符串中有多少个元音。我们应该使用_getche()函数,但我有MacBook,所以它不起作用 我试过做conio.h。 我也尝试过使用cin.get()和getchar(),但都不起作用。我认为您需要它: #include <conio.h> using namespace std; int main() { bool h = true; while(h){
#include <conio.h>
using namespace std;
int main()
{
bool h = true;
while(h){
char ch;
ch = getche();
if(ch=='q' || ch == 'Q'){
h = false;
}
}
return 0;
}
#包括
使用名称空间std;
int main()
{
bool h=真;
while(h){
char ch;
ch=getche();
if(ch='q'| ch='q'){
h=假;
}
}
返回0;
}
\uu getche()
不是标准函数,conio.h
不是标准标头。通常的做法是:
int main() {
int ch;
int vowel_count = 0;
while ((ch = getchar()) != 'q' && ch != 'Q' && ch != EOF) {
vowl_count += is_vowel(ch);
}
}
#包括//getchar(),std::cout
#包括//tolower()
int main()
{
整数计数=0;
for(;;)//无限循环
{
char c=getchar();//从stdin读取单个字符
if(tolower(c)='q')//如果输入为'q'或'q'
break;//中断循环
//在这里检查元音
{
计数++;
}
}
STD:Cuth:Cuth.Cix.())/Cuff>将从控制台读取一个字符,这是一个好的开始。如果不能使它工作,请显示代码。CONIO.H仅用于Windows。NCURSE是Linux和MAC的类似库。但也有很大的区别。虚拟机。它不是标准C,也不是标准C++。对于代码> GETCH()同样。
。如果你要发布使用此类非标准材料的答案,你应该指出哪些平台支持它。更好的是,提出可移植的解决方案。