Я работаю на дополнительный кредитный проект для класса и здесь спецификации:Ошибка при использовании Linked List в программе C
- Вы напишете программу переменного тока (вы должны использовать инструмент проектирования, но я не хочу чтобы увидеть его)
- Программа будет использовать динамическую память для создания связанного списка (НЕ РАЗРЕШАЕТСЯ АРХИТЕКТОР)
- В программе будет храниться неограниченное количество записей учащихся (ограничено только ОЗУ).
- Запись студента будет состоять из имени студента и возраста ... вам может потребоваться добавить еще два поля, чтобы сделать эту работу.
- Программа предоставит пользователю возможность добавлять записи.
- Программа предоставит пользователю возможность отображать ВСЕ записи (только на экране, без необходимости).
- Программа нуждается в способе выхода.
У меня есть весь код, но я получаю эту досадную ошибку. Это именно то, что я вижу на моем компьютере:
1>linkedProject.obj : error LNK2019: unresolved external symbol _add referenced in function _main
1>E:\Spring 2013\C Programing Class\linkedProject\Debug\linkedProject.exe : fatal error LNK1120: 1 unresolved externals
И вот мой код:
#include<stdlib.h>
#include<stdio.h>
#include<malloc.h>
#include<conio.h>
#include<string.h>
#include<ctype.h>
#define pause system ("pause")
// prototype variables
struct node * initnode(char*, int);
void printnode(struct node*);
void printflist(struct node*);
void add(struct node*);
struct node* searchname(struct node*, char*);
struct node{
char name[20];
int age;
struct node *next;
};
struct node *head = (struct node*) NULL;
struct node *end = (struct node*) NULL;
struct node* initnode(char *name, int age){
struct node *ptr;
ptr = (struct node*) calloc(1, sizeof(struct node));
if(ptr == NULL)
return (struct node*) NULL;
else {
strcpy(ptr->name, name);
ptr->age = age;
return ptr;
}
}
void printnode(struct node *ptr) {
printf("Name -> %s\n", ptr->name);
printf("Age -> %d\n", ptr->age);
}
void printlist (struct node *ptr) {
while (ptr != NULL) {
printnode(ptr);
ptr = ptr->next;
}
}
main() {
char name[20];
int age, choice = 1;
struct node *ptr;
while(choice != 3){
system("cls");
printf("1. Add a name\n");
printf("2. List all names\n");
printf("3. Exit");
printf("\nEnter Menu Selection: ");
scanf("%d", &choice);
switch(choice) {
case 1: printf("\nEnter a name: ");
scanf("%s", &name);
printf("Enter age: ");
scanf("%d", &age);
ptr = initnode(name, age);
add (ptr);
break;
case 2: printlist(head);
break;
case 3: exit(3);
default: printf("Invalid Entry");
}// end of switch
}// end of while
}// end of main
Вся помощь очень ценится !!
Ответ - это что-то вроде 'add (ptr);'? – 2013-04-10 06:25:36