Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何输入多个字母并在某个字母(q或q)后停止?_C++_Macos - Fatal编程技术网

C++ 如何输入多个字母并在某个字母(q或q)后停止?

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){

我被分配了一个家庭作业来输入用户想要的任意多个字母,并在输入q或q后停止。然后程序应该输出这样的字符串中有多少个元音。我们应该使用_getche()函数,但我有MacBook,所以它不起作用

我试过做conio.h。 我也尝试过使用cin.get()和getchar(),但都不起作用。

我认为您需要它:

#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()同样。
。如果你要发布使用此类非标准材料的答案,你应该指出哪些平台支持它。更好的是,提出可移植的解决方案。