Я пытаюсь создать бинарное дерево поиска, используя C. Что мне нужно сделать, это вставить идентификатор (только цифры) в узел и связать этот же узел с именем (строкой).Используя этот идентификатор, я могу отобразить дерево с помощью InOrder Searching.
Проблема в том, что я получил (спасибо, интернет) числа для вставки, выполните поиск InOrder.
Что мне не удалось сделать, так это связать строку с узлом, т. Е. Я не могу сохранить имена.Я нашел ответ на то же самое в связанном списке, но, похоже, я не понимаю код.Пожалуйста, помогите мне.
То, что я нашел, было memset () {Я понятия не имею, что это такое} и каким-то образом я должен использовать stringcpy {Я знаю это, но не знаю, как его применить}
Код моей структуры:
struct node
{
int employeeid;
struct node *left;
struct node *right;
char employeename[100];
}*temp=NULL,*link=NULL;
Внутри моей функции я попытался вставить имя, но получил ошибку:
printf("Enter the employee name: ");
gets(name);
temp = (struct node *)malloc(sizeof(struct node));
temp->employeeid = data;
temp->employeename = name;
temp->left = temp->right = NULL;
Строка кода с ошибкой: temp->employeename = name;
Ошибка:
error: assignment to expression with array type
То, что я ожидал, было, очевидно, кодом для запуска.Пожалуйста, помогите.