c语言typedef定义类型

来源:百度知道 编辑:UC知道 时间:2024/06/04 07:08:37
typedef struct /*定义数据结构*/
{ char songname[30];/*歌曲名*/
char singer[25]; /*歌手*/
char company[40]; /*唱片公司*/
char date[20]; /*发行日期*/
}song;
/*显示记录,参数为记录数组和记录条数*/
void list(song t[],int n)
{ /*在这里出现错误:C:\Documents and Settings\420\g.cpp(85) : error C2601: 'list' : local function definitions are illegal;这是什么,是哪里的错,怎么改*/
int i;
clrscr();
printf("\n ");

printf("\n Songname singer company date\n");
printf("\n");

for(i=0;i<n;i++) {
printf(" %30s %25s %40s %20s\n",t[i].songname,t[i].singer,t[i].company,t[i].date);
printf("\n");
getch();
}
}
以上是程序的一部分,大家看一下有错没有(其它的不管,就这段本身的有没有错误)
我把 list该为_list了,但是没有用
程序大了些,百度说超过3000字请删减
请到我百度空间里去看吧
对不起,是我疏忽了
请进http://hi.b

把你的list函数名字改一个(比如"_list")。。。因为库函数中有个东西叫list,所以这里产生了二义。。。就这样。。。
我想知道怎么去你的空间。。。我找了很久也没找到入口。。。LZ你也该留个门牌号吧。。。

我去你空间看过了。。。
我给你说吧。。。这段程序致命错误有:

1。忘了回括号“)”及“}”

2。把函数定义放在了main中(或者是忘了“}”的原因)

3。主函数就什么也没有。。。

所以建议你去找个好一点的程序。。。这个程序能改,不过意义不大了。。。

把你的list函数名字改一个(比如"_list")。。。因为库函数中有个东西叫list,所以这里产生了二义。。。

应该是名字重复定义了。。 STL标准库中有list,他是一个容器类型。

这段程序本身没错,你最好能都发过来看看,那样才能看看到底哪错了。

应该可以的吧。