У меня очень простая структура
struct Node{
Node* pNext;
int nValue;
};
и я пытаюсь всегда добавлять в pNext значение, отличное от нуля.
Node *head;
void add(int nValue){
if (!head)
{
Node *node = new Node;
node->nValue=nValue;
head = node;
}
else
{
add(head,nValue);
}
}
void add(Node *pNode, int nValue){
if (!(pNode->pNext))
{
Node *node = new Node;
node->nValue=nValue;
pNode->pNext = node;
}
else
{
add(pNode->pNext,nValue);
}
}
Когда я вызываю add(10); в первый раз он устанавливает головной указатель на созданный узел. но когда я снова вызываю метод add(9); я получаю «Место чтения нарушения доступа 0xCDCDCDCD».
Мой вопрос: как я могу проверить, назначен ли узлу pNext адрес или нет? Я пытался использовать == nullptr, но безрезультатно.