C++ C++;未定义符号错误
我得到了所有整数和字符值的未定义符号错误。请帮助我。C++ C++;未定义符号错误,c++,undefined,symbols,C++,Undefined,Symbols,我得到了所有整数和字符值的未定义符号错误。请帮助我。 int xy和z不工作,函数的字符值也不工作 #include <iostream.h> #include <conio.h> #include <math.h> #include <string.h> class Calculator { public: int x; int y; int z; char function; void Cal
int x
y
和z
不工作,函数的字符值也不工作
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <string.h>
class Calculator
{
public:
int x;
int y;
int z;
char function;
void Calculate()
{
if(function=='+')
{z=x+y;}
else if(function=='-')
{z=x-y;}
else if(function=='*')
{z=x*y;}
else if(function=='/')
{z=x/y;}
else
{cout<<"Wrong Function!!!";}
}
};
void main()
{
clrscr();
Calculator working;
cout<<"Welcome!"<<endl;
cout<<"Enter your first number:"<<endl;
cin>>x;
cout<<"Enter your function:"<<endl;
cin>>function;
cout<<"Enter your second number:"<<endl;
cin>>y;
working.Calculate();
cout<<"Your Result is:"<<z<<endl;
getch();
}
#包括
#包括
#包括
#包括
类计算器
{
公众:
int x;
int-y;
intz;
字符函数;
无效计算()
{
如果(函数=='+')
{z=x+y;}
else if(函数=='-')
{z=x-y;}
else if(函数=='*')
{z=x*y;}
else if(函数=='/'))
{z=x/y;}
其他的
{cout使用,std::cin
,std::cout
,std::endl
或包含std命名空间
using namespace std;
使用,std::cin
,std::cout
,std::endl
或包含std命名空间
using namespace std;
此代码编译:
#include <iostream>
#include <math.h>
#include <string.h>
using namespace std;
class Calculator
{
public:
int x,y;
float z;
void add()
{
cin>>x;
cin>>y;
z=x+y;
cout<<"The addition is:"<<z<<endl;
}
void substract()
{
cin>>x;
cin>>y;
z=x-y;
cout<<"The substraction is:"<<z<<endl;
}
void multiply()
{
cin>>x;
cin>>y;
z=x*y;
cout<<"The multiplication is:"<<z<<endl;
}
void divide()
{
cin>>x;
cin>>y;
z=x/y;
cout<<"The division is:"<<z<<endl;
}
};
int main()
{
cout<<"Hello User!"<<endl;
char Name[23];
cout<<"Enter your name:";
cin>>Name;
cout<<"Hy "<<Name<<endl;
cout<<"Calculator:"<<endl;
Calculator maths;
cout<<"Enter two numbers to Add:"<<endl;
maths.add();
cout<<"Enter two numbers to Substract:"<<endl;
maths.substract();
cout<<"Enter two numbers to Multiply:"<<endl;
maths.multiply();
cout<<"Enter two numbers to Divide:"<<endl;
maths.divide();
}
#包括
#包括
#包括
使用名称空间std;
类计算器
{
公众:
int x,y;
浮动z;
void add()
{
cin>>x;
cin>>y;
z=x+y;
cout此代码编译:
#include <iostream>
#include <math.h>
#include <string.h>
using namespace std;
class Calculator
{
public:
int x,y;
float z;
void add()
{
cin>>x;
cin>>y;
z=x+y;
cout<<"The addition is:"<<z<<endl;
}
void substract()
{
cin>>x;
cin>>y;
z=x-y;
cout<<"The substraction is:"<<z<<endl;
}
void multiply()
{
cin>>x;
cin>>y;
z=x*y;
cout<<"The multiplication is:"<<z<<endl;
}
void divide()
{
cin>>x;
cin>>y;
z=x/y;
cout<<"The division is:"<<z<<endl;
}
};
int main()
{
cout<<"Hello User!"<<endl;
char Name[23];
cout<<"Enter your name:";
cin>>Name;
cout<<"Hy "<<Name<<endl;
cout<<"Calculator:"<<endl;
Calculator maths;
cout<<"Enter two numbers to Add:"<<endl;
maths.add();
cout<<"Enter two numbers to Substract:"<<endl;
maths.substract();
cout<<"Enter two numbers to Multiply:"<<endl;
maths.multiply();
cout<<"Enter two numbers to Divide:"<<endl;
maths.divide();
}
#包括
#包括
#包括
使用名称空间std;
类计算器
{
公众:
int x,y;
浮动z;
void add()
{
cin>>x;
cin>>y;
z=x+y;
cout您需要将值传递给函数Calculate。变量x、y、z和函数在类外是不可访问的,并且您还需要函数的返回类型,以便您可以从函数Calculate获得输出
class Calculator
{
public:
int x;
int y;
int z;
char function;
int Calculate(int main_x,int main_y,char main_function)
{
x= main_x;
y=main_y;
function = main_function;
if(function=='+')
{z=x+y; return z;}
else if(function=='-')
{z=x-y; return z;}
else if(function=='*')
{z=x*y; return z;}
else if(function=='/')
{z=x/y; return z;}
else
{cout<<"Wrong Function!!!"; return 0;}
}
};
void main()
{
clrscr();
int main_x,main_y,main_z;
char main_function;
Calculator working;
cout<<"Welcome!"<<endl;
cout<<"Enter your first number:"<<endl;
cin>>main_x;
cout<<"Enter your function:"<<endl;
cin>>main_function;
cout<<"Enter your second number:"<<endl;
cin>>main_y;
main_z = working.Calculate(main_x,main_y,main_function);
cout<<"Your Result is:"<<main_z<<endl;
getch();
}
类计算器
{
公众:
int x;
int-y;
intz;
字符函数;
int计算(int main_x,int main_y,char main_函数)
{
x=主_x;
y=主_y;
函数=主函数;
如果(函数=='+')
{z=x+y;返回z;}
else if(函数=='-')
{z=x-y;返回z;}
else if(函数=='*')
{z=x*y;返回z;}
else if(函数=='/'))
{z=x/y;返回z;}
其他的
{cout您需要将值传递给函数Calculate。变量x、y、z和函数在类外是不可访问的,并且您还需要函数的返回类型,以便您可以从函数Calculate获得输出
class Calculator
{
public:
int x;
int y;
int z;
char function;
int Calculate(int main_x,int main_y,char main_function)
{
x= main_x;
y=main_y;
function = main_function;
if(function=='+')
{z=x+y; return z;}
else if(function=='-')
{z=x-y; return z;}
else if(function=='*')
{z=x*y; return z;}
else if(function=='/')
{z=x/y; return z;}
else
{cout<<"Wrong Function!!!"; return 0;}
}
};
void main()
{
clrscr();
int main_x,main_y,main_z;
char main_function;
Calculator working;
cout<<"Welcome!"<<endl;
cout<<"Enter your first number:"<<endl;
cin>>main_x;
cout<<"Enter your function:"<<endl;
cin>>main_function;
cout<<"Enter your second number:"<<endl;
cin>>main_y;
main_z = working.Calculate(main_x,main_y,main_function);
cout<<"Your Result is:"<<main_z<<endl;
getch();
}
类计算器
{
公众:
int x;
int-y;
intz;
字符函数;
int计算(int main_x,int main_y,char main_函数)
{
x=主_x;
y=主_y;
函数=主函数;
如果(函数=='+')
{z=x+y;返回z;}
else if(函数=='-')
{z=x-y;返回z;}
else if(函数=='*')
{z=x*y;返回z;}
else if(函数=='/'))
{z=x/y;返回z;}
其他的
{cout出现错误,因为您试图从main()的外部访问类成员变量x,y,z,其中x,y,z未声明
为了计算()正确工作,x,y,z应该得到正确的值,在您的情况下,这些变量有垃圾值。出现错误,因为您试图从main()中的外部访问类成员变量x,y,z,其中x,y,z未声明
为了计算()正确工作,x,y,z应该得到正确的值,在您的情况下,这些变量有垃圾值。这是成功编译的代码版本
#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
class Calculator
{
public:
int x;
int y;
int z;
char function;
void Calculate()
{
if(function=='+')
{z=x+y;}
else if(function=='-')
{z=x-y;}
else if(function=='*')
{z=x*y;}
else if(function=='/')
{z=x/y;}
else
{cout<<"Wrong Function!!!"<<endl;}
}
};
int main()
{
Calculator working;
cout<<"Welcome!"<<endl;
cout<<"Enter your first number:"<<endl;
cin>>working.x;
cout<<"Enter your function:"<<endl;
cin>>working.function;
cout<<"Enter your second number:"<<endl;
cin>>working.y;
working.Calculate();
cout<<"Your Result is:"<<working.z<<endl;
return 0;
}
#包括
#包括
#包括
使用名称空间std;
类计算器
{
公众:
int x;
int-y;
intz;
字符函数;
无效计算()
{
如果(函数=='+')
{z=x+y;}
else if(函数=='-')
{z=x-y;}
else if(函数=='*')
{z=x*y;}
else if(函数=='/'))
{z=x/y;}
其他的
{cout这是成功编译代码的版本
#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
class Calculator
{
public:
int x;
int y;
int z;
char function;
void Calculate()
{
if(function=='+')
{z=x+y;}
else if(function=='-')
{z=x-y;}
else if(function=='*')
{z=x*y;}
else if(function=='/')
{z=x/y;}
else
{cout<<"Wrong Function!!!"<<endl;}
}
};
int main()
{
Calculator working;
cout<<"Welcome!"<<endl;
cout<<"Enter your first number:"<<endl;
cin>>working.x;
cout<<"Enter your function:"<<endl;
cin>>working.function;
cout<<"Enter your second number:"<<endl;
cin>>working.y;
working.Calculate();
cout<<"Your Result is:"<<working.z<<endl;
return 0;
}
#包括
#包括
#包括
使用名称空间std;
类计算器
{
公众:
int x;
int-y;
intz;
字符函数;
无效计算()
{
如果(函数=='+')
{z=x+y;}
else if(函数=='-')
{z=x-y;}
else if(函数=='*')
{z=x*y;}
else if(函数=='/'))
{z=x/y;}
其他的
{coutPlease发布准确的错误消息。另外,它是int main
,而不是void main
,以及
,而不是
。是否可能是使用名称空间std;
?或其他许多std:
限定符丢失的?是否确定错误消息是关于x
、y
、和z
?当我试图编译它时,我得到了关于cin
和cout
的错误。错误消息可能只是关于使用未初始化变量的警告。请发布准确的错误消息。另外,它是int main
,而不是void main
,和。是否有可能是使用命名空间std;
?或其他许多std:
限定符?您确定错误消息是关于x
、y
和z
?当我试图编译它时,我得到了关于cin
和cout
的错误消息。错误消息可能只是关于使用未初始化变量的警告。@Barmar编译代码,它不会给出x,y的错误,z@Barmar我试着编译代码,它没有给出x,y,z的错误