неопределенная ошибка ссылки на несколько функций - PullRequest
0 голосов
/ 17 мая 2018

При запуске этой программы c для реализации операций со связанным списком я получаю неопределенную ошибку ссылки на несколько функций, таких как неопределенная ссылка на create_list, неопределенная ссылка на отображение и т. Д. Я также читал об этой ошибке на этом сайте, но не получаюточное значение этих ошибок.Я не имею понятия об этих ошибках, поэтому, пожалуйста, помогите мне понять эти ошибки.

#include < stdio.h >
#include < stdlib.h >
struct node {
  int info;
  struct node * link;
};
struct node * create_list(struct node * start);
void display(struct node * start);
void count(struct node * start);
void search(struct node * start, int data);
struct node * addatbeg(struct node * start, int data);
struct node * addatend(struct node * start, int data);
struct node * addafter(struct node * start, int data, int item);
struct node * addbefore(struct node * start, int data, int item);
struct node * addatpos(struct node * start, int data, int pos);
struct node * del(struct node * start, int data);
struct node * reverse(struct node * start);
main() {
  struct node * start = NULL;
  int choice, data, item, pos;
  while (1) {
    printf("1.Create list\n");
    printf("2.Display\n");
    printf("3.Count\n");
    printf("4.Search\n");
    printf("5.Add to empty list/Add at beginning\n");
    printf("6.Add at end\n");
    printf("7.Ad after node\n");
    printf("8.Add before node\n");
    printf("9.Add at position\n");
    printf("10.Delete\n");
    printf("11.Reverse\n");
    printf("12.quit\n");
    printf("Enter your choice:\n");
    scanf("%d", & choice);
    switch (choice) {
    case 1:
      start = create_list(start);
      break;
    case 2:
      display(start);
      break;
    case 3:
      count(start);
      break;
    case 4:
      printf("Enter the elements to be searched:");
      scanf("%d", & data);
      search(start, data);
      break;
    case 5:
      printf("Enter the element to be inserted");
      scanf("%d", & data);
      start = addatbeg(start, data);
      break;
    case 6:
      printf("Enter the element to be inserted: ");
      scanf("%d", & data);
      start = addatend(start, data);
      break;
    case 7:
      printf("Enter thee element to be inserted");
      scanf("%d", & data);
      printf("Enter the element after which to insert");
      scanf("%d", & item);
      start = addafter(start, data, item);
      break;
    case 8:
      printf("Enter the element to be inserted: ");
      scanf("%d", & data);
      printf("Enter the element before which to insert");
      scanf("%d", & pos);
      start = addbefore(start, data, item);
      break;
    case 9:
      printf("Enter the element to be inserted");
      scanf("%d", & data);
      printf("Enter the position at which to insert");
      scanf("%d", & data);
      break;
    case 10:
      printf("Enter the elements to be deleted");
      scanf("%d", & data);
      start = del(start, data);
      break;
    case 11:
      start = reverse(start);
      break;
    case 12:
      exit(1);
    default:
      printf("Wrong choice\n");
    }
  }
}

1 Ответ

0 голосов
/ 17 мая 2018

Ваша программа имеет объявленных функций, но она не определила их. Все, что вы сделали, это сказали, как вызывать create_list, но не как это должно реализовать эту функцию.

Есть ли другой файл, который идет с этим? Скорее всего, эти функции определены в другом файле, и вам нужно указать компилятору использовать скомпилированный вывод этого файла для определения этих функций.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...