C-将变量分配给链接列表中的下一个项目



我在链接列表中的"下一个"变量中分配了输入变量的用户很难。(即head-> next-> num = sul(通常将节点封闭在括号中的作品中,以将变量分配给列表中的一个项目,但我似乎无法将相同的逻辑应用于列表中的下一个项目。我不确定这是语法问题还是分配,但它会一直存在。我在说什么的代码示例。

#include <stdio.h>
#include <stdlib.h>
typedef struct fib {
  long long num;
  struct fib *next;
} fib;
typedef void (*callback)(fib *point);
char menu();
void welcome();
void help();
void exitmssg();
void print(fib *head, callback f);
void display(fib *n);
fib *run(fib *head, int count);
void main() {
  long long num1, num2, sum;
  int count;
  callback disp = display;
  fib *head, *pointer, *append;
  welcome();
  head = malloc(sizeof(fib));
  pointer = malloc(sizeof(fib));
  printf("Please enter two starting fibonacci numbers:n");
  scanf("%lli", &num1);
  scanf("%lli", &num2);
  (head->num) = num1;
  (head->next->num) = num2;
//((head->next)->num) doesn't work either

任何帮助将不胜感激。

您正在尝试使用非初始化的指针。head->next未初始化。

head = malloc(sizeof(fib));
pointer = malloc(sizeof(fib));
head->num = num1;
head->next = pointer;      // Now next points to something
head->next->num = num2;
pointer->next = NULL;      // This needs initialization too

这不是语法错误 - 这是一个运行时错误。如果是语法错误,则编译器会告诉您,并且不会编译/运行。

demo

相关内容

  • 没有找到相关文章