#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
struct stackNode
{
int data;
struct stackNode *nextPtr;
};
void instructions()
{
printf("[1]Push a value on the stack\n");
printf("[2]Pop a value off the stack\n");
printf("[3]Display the whole stack\n");
printf("[4]Exit");
}
void push(struct stackPtr *topPtr, int info)
{
struct stackPtr *newPtr;
newPtr= malloc(sizeof(struct stackNode));
if(newPtr !=NULL)
{
newPtr->data = info;
newPtr->nextPtr=*topPtr;
*topPtr=newPtr;
}
else
{
printf("%d not inserted no memory available");
}
int main()
{
struct StackNodePtr *stackPtr;
stackPtr = NULL;
int choice, value;
do
{
instructions();
printf("\nEnter Your Choice: ");
scanf("%d",&choice);
if(choice == 1)
{
printf("Enter a value for the stack");
}
if(choice == 2)
{
printf(" ");
}
if(choice == 3)
{
printf(" ");
}
if(choice == 4 )
{
printf("bye!");
return 0;
}
} while(choice !=4);
system("pause");
}
我为我的链表和堆栈代码做了一个函数推送,但问题是它不起作用,函数推送中有很多错误,怎么了?它不允许使用malloc为什么?
最佳答案
这对你有用吗?
struct stackNode { int data; struct stackNode *nextPtr; };
int main() { struct stackNode * stackPtr = NULL; }
关于c - 链表推送功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5579321/