回 帖 发 新 帖 刷新版面

主题:有个问题帮帮忙啊我新手

搞不动那里出错了.就是不抱错.很老火谢谢大家帮帮忙啊!!~~~

/*Filename:exam8_4.cpp*/
#include <iostream.h>
struct stud2
{
    int num;
    char name[20];
    char sex;
    float score;
   
};
void main()
{
    struct stud2 sl={102,"woailuo ",'m',92.5},*ps;
    ps=&sl;
    cout<<" 学号:"<<sl.num<<"姓名 :"<<sl.name;
    cout<<" 性别:"<<sl.sex<<" 分数:"<<sl.score<<endl;
    cout<<" 学号:"<<ps->num<<" 姓名:"<<ps->name;
    cout<<" 性别:"<<ps->sex<<"分数 :"<<ps->score<<endl;
    cout<<" 学号:"<<(*ps).num<<" 姓名:"<<(*ps).name;
    cout<<" 性别:"<<(*ps).sex<<"分数 :"<<(*ps).score<<endl;[em18][em18][em18][em18][em18][em18]

回复列表 (共6个回复)

沙发

这样修改:
=========================================================================================
#include <iostream>
using namespace std;






原因在这里:
=========================================================================================
从   Visual   C++   .NET   2003   开始,移除了旧的   iostream   库。   
    
  标准   C++   库和以前的运行时库之间的主要差异在于   iostream   库。iostream   实现的具体细节已经更改,如果想链接标准   C++   库,可能有必要重写代码中使用   iostream   的部分。   
    
  必须移除任何包含在代码中的旧   iostream   头文件(fstream.h、iomanip.h、ios.h、iostream.h、istream.h、ostream.h、streamb.h   和   strstrea.h),并添加一个或多个新的标准   C++   iostream   头文件(<fstream>、<iomanip>、<ios>、<iosfwd>、<iostream>、<istream>、<ostream>、<sstream>、<streambuf>   和   <strstream>,所有头文件都没有   .h   扩展名)。   
    
  下表描述新的标准   C++   iostream   库不同于旧   iostream   库的行为。   
    
  在新的标准   C++   iostream   库中:     
    
  open   函数不采用第三个参数(保护参数)。     
  无法从文件句柄创建流。     
  除了几个例外,新的标准   C++   库中的所有名称都在   std   命名空间中。有关更多信息,请参见使用   C++   库头。     
  单独用   ios::out   标志无法打开   ofstream   对象。ios::out   标志必须在逻辑   OR   中和另一个   ios   枚举数组合;比如,和   ios::in   或   ios::app   组合。     
  因为设置了   eofbit   状态,到达文件尾后   ios::good   不再返回非零值。     
  除非知道当前没有设置基标志,否则   ios::setf(_IFlags)   不应和   ios::dec、ios::oct   或   ios::hex   的标志值一起使用。格式化的输入/输出函数和运算符假定只设置了一个基。改用   ios_base。例如,setf(   ios_base::oct,   ios_base::basefield   )   清除所有基信息并将基设置成八进制。     
  ios::unsetf   返回   void   而不是以前的值。     
  若出现错误,istream::get(   char&   _Rch   )   不分配给   Rch。     
  istream::get(   char*   _Pch,   int   _Ncount,   char   _Delim   )   有三点不同:     
  没读取任何内容时设置   failbit。     
  提取的字符后总是存储一个   eos(与结果无关)。     
  值为   -1   时   _Ncount   是一个错误。     
  具有无效参数的   istream::seekg   不设置   failbit。     
  返回类型   streampos   是具有重载运算符的类。在返回   streampos   值(比如   istream::tellg、ostream::tellp、strstreambuf::seekoff   和   strstreambuf::seekpos)的函数中,应将返回值转换成所需的类型:streamoff、fpos_t   或   mbstate_t。     
  strstreambuf::strstreambuf(   _Falloc,   _Ffree   )   中的第一个函数参数采用   size_t   参数而不是   long。     
  除了上述改动外,以下作为旧   iostream   库元素的函数、常数和枚举数不是新   iostream   库的元素:     
    
  filebuf、fstream   ifstream   和   ofstream   的   attach   成员函数     
  filebuf、fstream   ifstream   和   ofstream   的   fd   成员函数     
  filebuf::openprot     
  filebuf::setmode     
  ios::bitalloc     
  ios::nocreate     
  ios::noreplace     
  ios::sync_with_stdio     
  streambuf::out_waiting     
  streambuf::setbuf(相同的行为使用   rdbuf   ->   pubsetbuf)

板凳

我试了试,你的代码没有问题 啊,你出什么问题了?

3 楼

恩谢谢了哈多谢了还讲的这么详细,真不知道该怎么感谢!!~~[em8]

4 楼


呵呵怎么会没又错呢,上面都解出来了>.

5 楼


/*Filename:exam8_4.cpp*/
#include <iostream>
using namespace std;
{
    int num;
    char name[20];
    char sex;
    float score;
   
};
void main()
{
    struct stud2 sl={102,"woailuo ",'m',92.5},*ps;
    ps=&sl;
    cout<<" 学号:"<<sl.num<<"姓名 :"<<sl.name;
    cout<<" 性别:"<<sl.sex<<" 分数:"<<sl.score<<endl;
    cout<<" 学号:"<<ps->num<<" 姓名:"<<ps->name;
    cout<<" 性别:"<<ps->sex<<"分数 :"<<ps->score<<endl;
    cout<<" 学号:"<<(*ps).num<<" 姓名:"<<(*ps).name;
    cout<<" 性别:"<<(*ps).sex<<"分数 :"<<(*ps).score<<endl;

6 楼


还是错的啊大大些我都搞郁闷了<<

我来回复

您尚未登录,请登录后再回复。点此登录或注册