主题:c++编程
我按书编的程序居然有这么多错误,经仔细检查后没找出错误,和课本一样的。请高手指正。我用的是microsoft visual stuidio 2005 运行的,请指正,谢谢。
1#include "stdafx.h"
2#include"iostream"
3#include"cstring"
4using namespace std;
5struct month
6{
7 char name[4];
8 int number_of_day;
9
10};
11int main()
12{ using namespace std;
13 char m[4];
14
15 month months[2]={ {"jan",31},{"feb",28}};
16 cout<<"input month is name:"<<endl;
17 cin>>m;
18for(int i=0;i!=2;i++)
19
20 if(strcmp(m,months[i].name)==0)
21 {cout<<m<<":"<<months[i].number_of_day<<endl;
22 break;
23 }
24
25
26
27
28 return 0;
29}
1>------ 已启动生成: 项目: jigou, 配置: Debug Win32 ------
1>正在编译...
1>c.cpp
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : error C2552: “months”: 不能用初始值设定项列表初始化非聚合
1> “main::month”: 不聚合带用户定义的构造函数的类型
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : error C2552: “months”: 不能用初始值设定项列表初始化非聚合
1> “main::month”: 不聚合带用户定义的构造函数的类型
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(18) : error C2036: “main::month *”: 未知的大小
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(18) : error C2027: 使用了未定义类型“main::month”
1> c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : 参见“main::month”的声明
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(18) : error C2228: “.name”的左边必须有类/结构/联合
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(20) : error C2036: “main::month *”: 未知的大小
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(20) : error C2027: 使用了未定义类型“main::month”
1> c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : 参见“main::month”的声明
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(20) : error C2228: “.number_of_day”的左边必须有类/结构/联合
1>xiugai.cpp
1>正在生成代码...
1>生成日志保存在“file://c:\Users\hang\Documents\Visual Studio 2005\Projects\jigou\jigou\Debug\BuildLog.htm”
1>jigou - 8 个错误,0 个警告
========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ==========
1#include "stdafx.h"
2#include"iostream"
3#include"cstring"
4using namespace std;
5struct month
6{
7 char name[4];
8 int number_of_day;
9
10};
11int main()
12{ using namespace std;
13 char m[4];
14
15 month months[2]={ {"jan",31},{"feb",28}};
16 cout<<"input month is name:"<<endl;
17 cin>>m;
18for(int i=0;i!=2;i++)
19
20 if(strcmp(m,months[i].name)==0)
21 {cout<<m<<":"<<months[i].number_of_day<<endl;
22 break;
23 }
24
25
26
27
28 return 0;
29}
1>------ 已启动生成: 项目: jigou, 配置: Debug Win32 ------
1>正在编译...
1>c.cpp
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : error C2552: “months”: 不能用初始值设定项列表初始化非聚合
1> “main::month”: 不聚合带用户定义的构造函数的类型
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : error C2552: “months”: 不能用初始值设定项列表初始化非聚合
1> “main::month”: 不聚合带用户定义的构造函数的类型
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(18) : error C2036: “main::month *”: 未知的大小
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(18) : error C2027: 使用了未定义类型“main::month”
1> c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : 参见“main::month”的声明
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(18) : error C2228: “.name”的左边必须有类/结构/联合
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(20) : error C2036: “main::month *”: 未知的大小
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(20) : error C2027: 使用了未定义类型“main::month”
1> c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(13) : 参见“main::month”的声明
1>c:\users\hang\documents\visual studio 2005\projects\jigou\jigou\c.cpp(20) : error C2228: “.number_of_day”的左边必须有类/结构/联合
1>xiugai.cpp
1>正在生成代码...
1>生成日志保存在“file://c:\Users\hang\Documents\Visual Studio 2005\Projects\jigou\jigou\Debug\BuildLog.htm”
1>jigou - 8 个错误,0 个警告
========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ==========