C++、编程问题很急,解决这个error C2143: syntax error : missing ';' before 'tag::id

我的程序是输入三个长方形的长宽高求体积并输出出了一个错误
error C2143: syntax error : missing ';' before 'tag::id'
error C2501: 'viod' : missing storage-class or type specifiers
fatal error C1004: unexpected end of file found

#include <iostream> /*预处理命令*/
using namespace std;
class Ti
{
public:
void set_A();
void set_B();
private:
float chang;
float wide;
float high;
};
float main()
{
Ti v1;
v1.set_A();
v1.set_B();
Ti v2;
v2.set_A();
v2.set_B();
Ti v3;
v3.set_A();
v3.set_B();
system ("pause");
return (0);
};
viod Ti::set_A()
{
cin>>chang;
cin>>wide;
cin>>high;
}
void Ti::set_B()
{
float T;
T=chang*wide*high;
cout<<"长方形的体积为:"<<T<<endl;
}

第1个回答  推荐于2016-05-15
#include <iostream>                          /*预处理命令*/    
using namespace std;
class Ti{
public: 
 void set_A(); 
 void set_B();
private:     
 float chang; 
 float wide; 
 float high;
};
int main(){  //这里改为int 
 Ti v1;   
 v1.set_A();   
 v1.set_B();   
 Ti v2;   
 v2.set_A();   
 v2.set_B();   
 Ti v3;   
 v3.set_A();   
 v3.set_B();   
 system ("pause");
 return (0);
} //这里多了个分号
void Ti::set_A(){  //void写错了 
 cin>>chang;  
 cin>>wide;   
 cin>>high;
}
void Ti::set_B(){   
 float T;   
 T=chang*wide*high;   
 cout<<"长方形的体积为:"<<T<<endl;
}

追问

你好,我是新手,弱弱的问一下能不能麻烦你把你的编程插件发给我一份的,我在网上搜了,没找到有用的也不知道都有什么插件,刚刚已经解决了我的问题,谢谢你了,我的QQ是1047336370

本回答被提问者采纳
第2个回答  2013-09-30
void Ti::set_A()//viod Ti::set_A()字母反了

第3个回答  2013-09-30
"viod Ti::set_A()"拼写错误。
第4个回答  2013-09-30
编程插件一般的大学ACM网站可以有

...C2143: syntax error : missing ';' before 'tag::id
include <iostream> \/*预处理命令*\/ using namespace std;class Ti{public: void set_A(); void set_B();private: float chang; float wide; float high;};int main(){ \/\/这里改为int Ti v1; v1.set_A(); v1.set_B(); Ti v2; v2.set_A(); ...

c语言error C2143: syntax error: missing before type是什么意思...
在C语言中,这是一个语法错误。在运行程序时发现了一个问题,总是提示一个错误:error C2143: syntax error : missing before type。解决方法如下:把所有变量的声明放在可执行代码之前。出现此问题的原因在于:将文件保存成了 .c 格式。如果是cpp格式就能正常编译。改成.cpp就可以正常运行,和你变量...

c语言 error C2143: syntax error : missing '{' befor?
error C2143: syntax error:missing '{' before '*'这句话的意思是说:C句法规则错误第2143号:在'*'的前面少了'{'。具体要检查在红色标号处(或稍前位置)处有否大括号不匹配的情况。

C错误救助:error C2143: syntax error : missing ';' before 'type'
还有就是 b c 变量未定义 你这段代码在 VC++ 和 DEV C++ 下调试是通过的。估计你用的是 C 语言环境,要把变量定义放到前面。而且你这段代码是测试sizeof和int型数据大小的,在不同的编译环境中不进相同。\/\/\/ VC++ \/\/ DEV C++ \/\/ TC 下编译通过 include<stdio.h> include<stdlib.h> in...

C++ 编译错误error C2143: syntax error : missing ';' before '.'
Deck 的定义在哪呢?缺失类定义或是类定义有错,也可能导致编译器定位错误不准。

...C2143: syntax error : missing ';' before 'type'
请把scanf("%lf",&a);改成scanf("%f",&a);。但这不会出现你说的问题,你应该把scanf("%lf",&a);和 int b=(int)a;两行生敲一遍,一般出现这种情况是隐藏了不可识别的不显示符号造成的。

...C2143: syntax error : missing ')' before '*' 中的C2143是什么意...
前面丢失半边括号

error C2143: syntax error : missing ';' before 'type'
变量声明要放在其它代码之前,修改一下就行了:include <stdio.h> void main(){ FILE *fp;char filename[20];char string[81];\/\/放这儿 printf("Enter the file name:");scanf("%s",filename);}

c++语法错误 error C2143: syntax error : missing ';' before '&&'
空语句”。空语句的格式就是一个分号。所以编译程序提示你:语法错误:在‘&&’之前缺失分号。( syntax error : missing ';' before '&&' )看来,是编译程序的分析结果,误判了你的错误原因。当然,编译程序一般是不能保证正确分析你的错误原因的,只要提醒你“有错误”就不错了。

VC++6.0中error C2143: syntax error : missing ';' before 'type'
是的,定义应该放在前面

相似回答