请问这题哪儿错了?C++

我检查了好几篇了.每一个字母都是对着书上的.运行有一处错误.它说我的stu初始化列表什么什么的.我晕.让大家看一下.要是没问题.应该就是VC++编译器问题了.谢谢.#in... 我检查了好几篇了.每一个字母都是对着书上的.运行有一处错误.它说我的stu初始化列表什么什么的.我晕.让大家看一下.要是没问题.应该就是VC++编译器问题了.谢谢.
#include<iostream>
#include<string>
using namespace std;
struct student
{int num;string n;float s[3];
}stu={1001,"刘德华",85.5,78.5,93.5};

int main()
{void print(student);
print(stu);
return 0;}

void print(student stud)
{cout<<stu.num<<","<<stu.n<<","<<stu.s[0]<<stu.s[1]<<stu.s[2];}
楼1.不行啊.错误反而 增加了1个
我都怀疑是编译器问题了.

真的是编译器原因.我改为char n[20];马上运行正确.你们觉得呢?那位的方法好特别.还是第一次见过.能够运行.就是看不懂那个格式.

错误提示为:error C2552: 'stu' : non-aggregates cannot be initialized with initializer list
Error executing cl.exe.

谢谢大家!
总结了一下:是编译器问题.因为在别的编译器上能通过!
展开
 我来答
xniren
2006-10-30 · TA获得超过1154个赞
知道小有建树答主
回答量:554
采纳率:100%
帮助的人:515万
展开全部
请你把错误信息也贴出来看看。

编译器错误 C2552表示不能用初始值设定项列表初始化非聚合。也就是说类型string不是以下的聚合:
数组
没有以下内容的类、结构和联合:
构造函数
私有或受保护的成员
基类
虚函数
所以更改结构中成员n的类型,可以成功。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
_KQL_
2006-10-30 · 超过59用户采纳过TA的回答
知道小有建树答主
回答量:139
采纳率:0%
帮助的人:144万
展开全部
#include<iostream>
#include<string>
using namespace std;
struct student
{
student(int i,string name,float s1,float s2,float s3){
num = i;n = name;s[0] = s1;s[1] = s2;s[2] = s3;
}
int num;string n;float s[3];
}stu(1001,"刘德华",85.5,78.5,93.5);

void print(student);

int main()
{
print(stu);
return 0;
}

void print(student stud)
{cout<<stu.num<<","<<stu.n<<","<<stu.s[0]<<stu.s[1]<<stu.s[2];}

呵呵......
加入了一个构造函数,我看你用的C++语法,你不应该看不懂构造函数啊...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
karenpeng123
2006-10-30 · TA获得超过710个赞
知道小有建树答主
回答量:564
采纳率:0%
帮助的人:382万
展开全部
同意楼上的

定义了3个变量,赋值的个数也要一样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
科学院瘫临C5
2006-10-30 · TA获得超过336个赞
知道小有建树答主
回答量:213
采纳率:0%
帮助的人:147万
展开全部
{1001,"刘德华",{85.5,78.5,93.5}}; 这样行不行?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冯益斌
2006-10-30 · TA获得超过1019个赞
知道小有建树答主
回答量:869
采纳率:100%
帮助的人:997万
展开全部
我在Visual Studio .Net 2003上运行就没问题!!!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式