在结构体作为引用传入参数,总是提示编译出错。 LINUX GCC的编译器

grubby4k 2012-08-01 03:00:16
在结构体作为引用传入参数,总是提示编译出错。 LINUX GCC的编译器

代码如下,实现简单双向链表功能


#include <stdio.h>
#include <malloc.h>

typedef struct LISTNODE
{
struct LISTNODE *prev;
struct LISTNODE *next;
int data;
}ListNode, *LinkedList;


void CreateLinkedList(LinkedList &l)
{
int size = 0;
int i,j;
printf("please input the size of list:");
scanf("%d", &size);
ListNode* p;
l = (ListNode*)malloc(sizeof(LinkedList);
p = l;
l->prev = NULL;
l->next = NULL;
for(i = 0; i < size; i++)
{
LinkedList q = (LinkedList)malloc(sizeof(LinkedList));
q->next = NULL;
q->prev = p;
p->next = q;
scanf("%d", &q->data);
p = p->next;
}
}

// Print Linked List
void PrintList(LinkedList &l)
{
printf("DuLinked List includes elements below:\r\n");
ListNode* p;
p = l->next;
while(p != NULL)
{
printf("%d\r\n",p->data);
p = p->next;
}
}

void main(int argc, char** argv)
{
LinkedList ll;
CreateLinkedList(ll);
PrintList(ll);
}

...全文
159 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
grubby4k 2012-08-02
  • 打赏
  • 举报
回复
晕,c++和C搞混了
南气子水 2012-08-01
  • 打赏
  • 举报
回复
C语言没有引用&操作。
可以用指针
自信男孩 2012-08-01
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

C语言没有引用的
[/Quote]
++
C语言里没有引用&的操作。
使用g++即C++编译器是可以编译通过的。
manxiSafe 2012-08-01
  • 打赏
  • 举报
回复
看了半天 也没看出啥毛病出来,&l 可以这样引用的,
linkedList.c:12: 错误:expected ‘;’, ‘,’ or ‘)’ before ‘&’ token
linkedList.c:35: 错误:expected ‘;’, ‘,’ or ‘)’ before ‘&’ token

这GCC 编译器报错 太不精确了
MC_LoveX 2012-08-01
  • 打赏
  • 举报
回复
C语言没有引用的
grubby4k 2012-08-01
  • 打赏
  • 举报
回复
linkedList.c:12: 错误:expected ‘;’, ‘,’ or ‘)’ before ‘&’ token

括号 是我漏帖了、、、
shen_wei 2012-08-01
  • 打赏
  • 举报
回复
没有linux 请把错误也给贴出来!!!
shen_wei 2012-08-01
  • 打赏
  • 举报
回复
(ListNode*)malloc(sizeof(LinkedList);

这里少了一个括号。。。

69,382

社区成员

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

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