Ich bin neu in Pointern und Erstellen von verknüpften Listen. Der Code ist nur ein Teil der gesamten Sache. Ich habe versucht, diesen Teil zum Testen und Debuggen einfacher zu machen, aber ich kann es immer noch herausfinden. Kann mir jemand helfen, herauszufinden, dass der Prozess beendet wird, nachdem er den angegebenen Code ausgeführt hat?Warum wird der Prozess beendet, nachdem mein Code ausgeführt wurde? Prozess liefert 255
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#define SPADE "SPADE"
#define CLUB "CLUB"
#define DIAMOND "DIAMOND"
#define HEART "HEART"
typedef struct Card{
int value;
char suit[10];
}Card;
typedef struct BagNode {
Card* card;
struct BagNode* next;
}BagNode;
int main() {
BagNode* head = NULL;
BagNode* tail = NULL;
const char* suit = SPADE;
int value = 6;
if(tail == NULL)
{
printf("add funct works\n");
BagNode* newNode = (BagNode*)malloc(sizeof(BagNode)); // allocate space
newNode->card->value = value; // assign value
strcpy(newNode->card->suit, suit); // assign value
head = newNode;
tail = newNode;
printf("added cards\n");
}
else{
BagNode* newNode = (BagNode*)malloc(sizeof(BagNode)); // allocate space
newNode->card->value = value; // assign value
strcpy(newNode->card->suit, suit); // assign suit
tail->next = newNode;
tail = newNode;
}
}
Dies ist, was die Ausgabe wie folgt aussieht:
add funct works
added cards
Process returned 255 (0xFF) execution time : 6.898 s
Warum ist es Rückkehr 255?
Jede Richtung würde sehr geschätzt werden!
** Anmerkung: Ich bin in C schreiben
Versuchen Sie, 'return 0;' vor dem letzten '}' der Datei zu setzen –