编写一个计算器,老是出现错误。本人正入门。
代码:
#include<iostream>
using namespace std;
#include <math.h>
class Csan
{
private:
char c;
public:
int m;
int count()
{
char temp;
m=0;c=0;
cout<<"请输入一个整数"<<endl;
cin>>temp;
//字符型符号存在c中
if(41<=temp<=48)
{
c=temp;
temp=0;
}
else{
switch(c)
{
case '+' :m=m+temp;c=0;cout<<m<<endl;break;
case '-' :m=m-temp;c=0;cout<<m<<endl;break;
case '*' :m=m*temp;c=0;cout<<m<<endl;break;
case '/' :m=m/temp;c=0;cout<<m<<endl;break;
default:break;
}
}
}
}
int main(void)
{
Csan a;
a.count();
return 0;
}
1>------ 已启动生成: 项目: counter_1, 配置: Debug Win32 ------
1>生成启动时间为 2012/3/13 23:51:12。
1>InitializeBuildStatus:
1> 正在对“Debug\counter_1.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1> counter.cpp
1>f:\软件课程设计\项目\counter_1\counter.cpp(40): error C2628: “Csan”后面接“int”是非法的(是否忘记了“;”?)
1>f:\软件课程设计\项目\counter_1\counter.cpp(41): error C3874: “main”的返回类型应为“int”而非“Csan”
1>f:\软件课程设计\项目\counter_1\counter.cpp(44): error C2664: “Csan::Csan(const Csan &)”: 不能将参数 1 从“int”转换为“const Csan &”
1> 原因如下: 无法从“int”转换为“const Csan”
1> 无构造函数可以接受源类型,或构造函数重载决策不明确
1>f:\软件课程设计\项目\counter_1\counter.cpp(19): warning C4804: “<=”: 在操作中使用类型“bool”不安全
1>
1>生成失败。
1>
1>已用时间 00:00:01.49
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
[解决办法]
类定义结束后要加一个分号,你的没加
[解决办法]
声明类的语法规定,在类块的后面加个分号,如
class Name{
......
};
[解决办法]
类结束后要加分号,还有if(41<=temp<=48);没有这样的用法 if(temp>=41 && temp <= 48) ;