c++中cin函数错误:error C2679

flyBfairy 2008-03-26 11:15:17
遍译时提示错误:
cpp(21) : error C2679: 二进制“>>”: 没有找到接受“int *”类型的右操作数的运算符(或没有可接受的转换)
我是新手,望高手指点一哈.非常感谢
#include "stdafx.h"
#include "conio.h"
#include "string"
#include "iomanip"
#include "iostream"
using namespace std;
struct student{int num;char name[12];float score;};
struct student s[10];
void main()
{
struct student *p,*q[10];
int i,j,k;
cout<<"Input 10 student's num name score"<<endl;
p=s;
for(i=0;i<10;i++)
{
cin>>&p->num>>&p->name>>&p->score;
q[i]=p++;
}
for(i=0;i<10-1;i++)
{
k=1;
for(j=i+1;j<10;j++)
if(q[k]->score<q[j]->score)k=j;
if(k!=i)
{
p=q[i];q[i]=q[k];q[k]=p;
}
}
cout<<"NO. Name Score"<<endl;
for(i=0;i<10;i++)
{
cout<<setfill(' ')<<setw(8)<<q[i]->num<<setfill(' ')<<setw(8)<<q[i]->name<<setfill(' ')<<setw(8)<<q[i]->score;
}
}
...全文
198 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DonyUnx 2008-03-26
  • 打赏
  • 举报
回复
恩,是因为那个&符号的原因,开始想的对的,后来再看看以为要向c里的取指针的,呵呵,学的太不扎实了
qmm161 2008-03-26
  • 打赏
  • 举报
回复
& 拿掉!
great3779 2008-03-26
  • 打赏
  • 举报
回复
不需要取地址的。
Pause_break 2008-03-26
  • 打赏
  • 举报
回复
对啊,p是指向结构体的指针,“&p->num”的类型不就是int *,你是要输入一个整型数,不是输入指型指针
DonyUnx 2008-03-26
  • 打赏
  • 举报
回复
看错了不好意思,晕~
DonyUnx 2008-03-26
  • 打赏
  • 举报
回复
为啥要加‘&’呀?
flyBfairy 2008-03-26
  • 打赏
  • 举报
回复
就是&不要,我是c和c++一起学,搞混了阿
相关推荐
发帖
C++ 语言

6.3w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
帖子事件
创建了帖子
2008-03-26 11:15
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下