如何将字符串压入堆栈,
我已经使用这些结构来开发一个堆栈来存储学生的详细信息及其标记,
typedef struct node{
char name[50];
int marks;
struct node * next;
}Node;
typedef struct{
int no_student;
Node * top;
}stack;
我的用于将他的名字和标记推入堆栈的Push函数在下面,
void Push(stack *S, char name[], int marks){
Node *np;
np = (Node*)malloc(sizeof(Node));
np->marks = marks;
strcpy(S->top->name, name);
np->next = S->top;
S->top = np;
S->no_student++;
}
当我运行这段代码时,编译器给我一个运行时错误,我该如何解决?