Я пишу программу на C ++, которая в основном работает как Notepad.Когда я запускаю программу, я могу напечатать, удалить, добавить в начало (при перемещении курсора в начало) и переместить курсор _
влево и вправо.
У меня проблема в том, что я хочу добавить узел между двумя узлами, где находится курсор.В настоящее время я могу добавить символы между двумя узлами, но он добавляет символ на один узел назад туда, где находится курсор _
.
В этом случае, когда я набираю символы abcdef
, я хочувставить символ t
как таковой abcdtef
(где курсор _
будет находиться под e
), но фрагмент кода, который у меня есть, будет работать как abctdef
else // else you are inserting in between two nodes
{
Node *midNode = new Node(c);
Node *temp = nullptr;
temp = curr->prev;
midNode->next = curr;
midNode->prev = temp;
temp->next = midNode;
curr->prev = midNode;
}
x++;