这是我的代码(main.cpp) -
void InstallFlag();
int main()
{
char a;
cout << "Would you like to proceed with the installation setup? Y/N : ";
cin >> a;
if (a==Y)
{
InstallFlag();
}
else {
return 0;
}
}
void InstallFlag()
{
//Setup code here
}
我收到此错误: 错误,Y未在此范围内声明。 新手到C ++:D
答案 0 :(得分:2)
您应该将答案与char进行比较,现在您要与未定义的变量进行比较。 所以,你的代码应该是:
if (a=='Y')
//your code here
答案 1 :(得分:0)
简单。 a ==&#39; Y&#39;。 Y是变量名,&#39; Y&#39;是char字面的。你没有定义Y变量,编译器是正确的
答案 2 :(得分:0)
当您在程序中使用某个变量时,需要声明,让变量为char
类型,以便将其声明为 char Y; 当你用一些值初始化它时,我们说我们将它定义为 Y =&#39; A&#39 ;;
在你的情况下,问题是你必须在Y周围加上引号,比如
if (a=='Y')
因为您的编译器认为Y
是尚未声明的变量,所以错误。但是当您输入引号时,它会将其视为character literal
答案 3 :(得分:-1)
您的代码应如下所示
void InstallFlag();
int main()
{
char a;
cout << "Would you like to proceed with the installation setup? Y/N : ";
cin >> a;
if (a=='Y')
{
InstallFlag();
}
else {
return 0;
}
}
void InstallFlag()
{
//your code
}