微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在链表节点中分配数组

如何解决在链表节点中分配数组

我最近开始学习编程,刚刚了解了链表。我知道如何在链表的节点中分配单个元素,如 charint

我试图在单个节点中分配一个 char 数组,然后为每个节点打印数组的元素。

这是我尝试执行上述操作的代码部分:

node* ReadList() {
  node *head = NULL,*n,*m;
  char data[20],c;
  bool lmfao = false;
  int i;

  for (i=0; i<20; i++) {
    c = getchar();
    if (c == ' ') break;
    data[i] = c;
  }

  n = new node;
  n->next = NULL;
  n->info = data[];
  head = n;

  while (!lmfao) {

   for (i=0; i<20; i++) {
     c = getchar();
     if (c == ' ') break;
     if (c == EOF) lmfao = true;
     data[i] = c;
   }

   if (!lmfao) {
     m = new node;
     n->next = m;
     m->info = data[];
     m->next = NULL;
     n = m;

   }

   if (lmfao) {
     m = new node;
     n->next = m;
     m->info = data[];
     m->next = NULL;
   }
  }

  return head;
}

为了这个例子,假设字母系列不超过 20 个字符。

当我尝试编译它时,我收到错误消息:

test.cpp:23:18: error: expected primary-expression before ']' token
test.cpp:38:21: error: expected primary-expression before ']' token
test.cpp:47:21: error: expected primary-expression before ']' token

我曾尝试使用 data 而不是 data[] 但后来我得到了这个:

test.cpp:36:16: error: invalid conversion from 'char*' to 'char' [-fpermissive]

我完全理解,因为我试图将指针转换为 char 值。

不管怎样,我都不知道我能做些什么来分配 单个节点中的整个数组。

在每个节点中分配一个元素对我正在尝试做的事情不起作用。

有什么建议吗?

提前致谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。