下列程序编译哪里出错

HQWEIEI 2010-04-28 06:13:32
#include<stdio.h>
inlist *creatlist(inlist *l){}; //error C2143: syntax error : missing '{' before '*'
int len_list(inlist *l){};
int loc_list(inlist *l,int x){};
struct inlist
{
int data;
inlist *next;
};
main()
{
inlist *l=malloc(sizeof(inlist));
int x=0,k=0,len=0;
l=creatlist(l);
len=len_list(l);
scanf("%d",&x);
k=loc_list(l,x);
if(k==-1)
{
printf("None!\n");

}
else
{
printf("result=%d\n",k);
}
}
...全文
66 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
eilianlong 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 logiciel 的回复:]
按C++编译可以,但按C编译要改为:

typedef struct _inlist
{
int data;
struct _inlist *next;
}inlist;
[/Quote]
logiciel 2010-04-28
  • 打赏
  • 举报
回复
按C++编译可以,但按C编译要改为:

typedef struct _inlist
{
int data;
struct _inlist *next;
}inlist;

HQWEIEI 2010-04-28
  • 打赏
  • 举报
回复
还有syntax error : identifier 'inlist'
findcsdn 2010-04-28
  • 打赏
  • 举报
回复


#include<stdio.h>
#include <stdlib.h>

struct inlist
{
int data;
inlist *next;
};

inlist *creatlist(inlist *l)
{
return NULL;
};

int len_list(inlist *l)
{

};

int loc_list(inlist *l,int x)
{

};

void main()
{
inlist *l=(inlist *)malloc(sizeof(inlist));
int x=0,k=0,len=0;
l=creatlist(l);
len=len_list(l);
scanf("%d",&x);
k=loc_list(l,x);
if(k==-1)
{
printf("None!\n");

}
else
{
printf("result=%d\n",k);
}
}
ccnyou 2010-04-28
  • 打赏
  • 举报
回复
请把struct inlist放到程序头部(所有函数之前)或声明一下。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧