Ich versuche, Daten an das Ende der Liste einzufügen, aber es funktioniert nicht: eine Ausnahme tritt zur Laufzeit auf.Ich habe ein Problem mit der verknüpften Liste iam versucht hinzuzufügen, aber der debuger sagt, dass cant Zugriff auf den Speicher der Temp
struct gradeNode *newNode = (struct gradeNode*)malloc(sizeof(struct gradeNode));
assert(newNode != NULL);
strcpy(newNode->courseName, courseName); // copying the course name
newNode->next = NULL;
struct gradeNode *temp = students[i].gradelist->head; // a temp
// here is the problem: the debugger says ecxeption, can't access memory
while (temp->next != NULL)
{
temp = temp->next; // I can't get to here
temp->next = newNode;
}
[Bitte lesen Sie diese Diskussion, warum nicht den Rückgabewert von malloc() und Familie in C ..] werfen (https://stackoverflow.com/q/605845/2173917) –
Ist 'Studenten [i]. Notenliste-> Kopf richtig initialisiert? Wann geschieht das? Ist 'temp' ein Null- oder sonst ein ungültiger Zeiger? Bitte versuchen Sie, ein [minimales, vollständiges und verifizierbares Beispiel] (http://stackoverflow.com/help/mcve) zu erstellen und zeigen Sie uns. Und bitte nehmen Sie sich etwas Zeit (lesen Sie, wie Sie gute Fragen stellen können) (http://stackoverflow.com/help/how-to-ask). –
@loay Es scheint, dass Temp gleich NULL ist. –