C++,发现意外的文件尾,感觉没有错误啊

#include <iostream>
using namespace std;
class Student//定义学生类
{
public:
void setData(int Id, char Name[], bool Sex, float weight);
void show();
Student();
Student(int Id, char Name[], bool Sex, float weight);
private:
int ID; //学号
char name[9]; //姓名
bool sex; //性别,真代表男,假表示女
float weight; //体重
};
Student::Student()
{
ID=211416030;
strcpy(name,"wwj");
sex=false;
weight=48;
}
Student::Student(int Id, char Name[], bool Sex, float weight)
{
ID=Id;
strcpy(name,Name);
sex=Sex;
this->weight=weight;
}
void Student::setData(int Id, char Name[], bool Sex, float weight)
{
ID=Id;
strcpy(name,Name);
sex=Sex;
this->weight=weight;
}
void Student::show()
{
cout<<"学生的信息是:"<<endl;
cout<<"学号:"<<ID<<endl;
cout<<"姓名:"<<name<<endl;
cout<<"性别:"<<(sex==true?"男":"女")<<endl;
cout<<"体重:"<<weight<<endl;
}
void main()
{
Student s1,s2,s3(211416031,"Tom",true,65);
s1.show();
s2.setData(211416032,"Mary",false,50);
s2.show();
s3.show();
}

第1个回答  2017-10-05
(sex==true?"男":"女") 是个什么类型?
c++不是动态言语,上面那句编译器可能无法识别
第2个回答  2015-03-18
vs2008编译没有错误,你用什么编译器?能否把报错的贴出来看下?追问

。。。。。又突然调试得出来了

追答

VS2008直接复制你的代码,输出的结果。

本回答被提问者采纳

c++中编译中报错说“发现意外的文件尾”是什么意思
发现意外的文件尾,是C++编译中出现的一个错误,当C++编译程序对源文件进行编译时,会对一些特定的结束标志做配对或查找。当一个期望的符号没有找到,就已经达到文件尾部时,就会报这样的错误。对于这类错误,要重点查整个程序中大括号的配对情况,以及程序最后部分的结尾符号。比如如下程序:int main(){ ...

c++出现fatal error C1004: unexpected end of file found
提示说程序意外结束,这种问题一般是最后少了一个大括号造成的 1main函数里大括号没有匹配, struct定义}后没有分号, 如果用vc,使用预编译头文件没有include预编译头文件,默认include<stdafx.h>

mystack.cpp(52) : fatal error C1004: 发现意外的文件尾
使用模板类的时候,只要.h,不要.cpp。把mystack.cpp中的所有内容,移到mystack.h中,删除mystack.cpp。C1004的错误,看看是不是文件尾部有全角字符(空格,分号等)。

...Doc.cpp(1854) : fatal error C1004: 发现意外的文件尾
可能是别的错误导致的,不一定是报错的那个文件有错误

驳狗屎文 "我为什么放弃Go语言
不仅是因为带BOM的.go文件没有太多的意义, 而且有很多的缺陷.BOM的原意是用来表示编码是大端还是小端的, 主要用于UTF16和UTF32. 对于 UTF8 来说, BOM 没有任何存在的意义(正是Go的2个作者发明了UTF8, 彻底解决了全球的编码问题).但是, 在现实中, 因为MS的txt记事本, 对于中文环境会将txt(甚至是C\/C++源...

c语言编译没有错误,连接有错误是怎么回事?程序本身没错
1、链接错误也不一定是系统的问题,也有可能是程序的问题。如果编译有错的话是不会有链接的,链接要有obj目标文件,编译不通过就没有目标文件。2、连接错误及原因:编译器错误 C2001 错误消息 常数中有换行符 字符串常数不能继续到第二行,除非进行下列操作: •用反斜杠结束第一行。 •用一个双引号结束第一...

C语言编译、连接的各种错误
“character”: 宏形参表中的意外 该字符在宏定义的形参表中使用不正确。移除该字符以解决该错误。编译器错误 C2011 错误消息 “identifier”:“type”类型重定义 该标识符已定义为 type 类型。如果多次将某个类型库导入同一个文件,也可能生成 C2011。编译器错误 C2012 错误消息 在“<”之后缺少名称 #include...

C++ cin的使用,看这一篇就够了
异常的引发导致输入流被关闭,错误的输入被存储在输入缓冲区。要重新开始输入,需要清除所有位。2.4.4 文件尾EOF 检测文件尾EOF时,cin将eofbit和failbit设置为1,并设置一个指示EOF条件的标记。清除标记后,cin将不再读取输入。2.5 面向字符的输入 2.5.1 cin.get(char &)用于读取单个字符并将其...

请问在c++中如何进行文件的输入输出以及读入?
bad()如果在读写过程中出错,返回 true 。例如:当我们要对一个不是打开为写状态的文件进行写入时,或者我们要写入的设备没有剩余空间的时候。 fail()除了与bad() 同样的情况下会返回 true 以外,加上格式错误时也返回true ,例如当想要读入一个整数,而获得了一个字母的时候。 eof()如果读文件到达文件末尾,返回...

驳狗屎文"我为什么放弃Go语言
我觉得对于写Go程序来说,这个限制是没有任何问题的,到目前为止,我还没有使用过带BOM的.go文件。不仅是因为带BOM的.go文件没有太多的意义,而且有很多的缺陷。BOM的原意是用来表示编码是大端还是小端的,主要用于UTF16和UTF32。对于UTF8来说,BOM没有任何存在的意义(正是Go的2个作者发明了UTF8,彻底解决了全球的...

相似回答