У меня возникли проблемы с созданием базы данных на основе односвязного списка в C, не из-за концепции связанного списка, а из-за строковых полей в самой структуре.
Это присваивание в C, и, насколько я знаю (я новичок), C не распознает «строку» как тип данных.
Вот как выглядит код моей структуры:
typedef struct
{
int number;
string name;
string address;
string birthdate;
char gender;
} patient;
typedef struct llist
{
patient num;
struct llist *next;
} list;
Я думал создать структуру для самих строк, чтобы использовать их в структуре, например:
typedef struct string
{
char *text;
} *string;
Затем я malloc( )
каждый из них, когда требуется сделать новые данные строкового типа (массив символов).
typedef struct string
{
char *text;
} *string;
int main()
{
int length = 50;
string s = (string) malloc(sizeof string);
s->text = (char *) malloc(len * sizeof char);
strcpy(s->text, patient.name->text);
}
Кто-нибудь может помочь мне разобраться?
Спасибо.