スタックのコードを開始していますが、ここに問題があります
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
struct stackNode
{
int data;
struct stackNode *nextPtr;
};
typedef struct stackNode StackNode;
typedef StackNode *StackNodePtr;
void instructions()
{
printf("Please enter a choice\n");
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(StackNodePtr *topPtr, int info)
{
StackNodePtr newPtr;
newPtr=malloc (sizeof ( StackNode ));
if(newPtr !=NULL)
{
newPtr->data=info;
newPtr->nextPtr=*topPtr;
*topPtr = newPtr;
}
}
int main()
{
instructions();
system("pause");
}
私のコードの何が問題になっていますか?
これが問題です
newPtr = malloc(sizeof (StackNode));
void*
からへの無効な変換を示しましたStackNode*
コンパイルして、動作するかどうかを確認します
どうすればこれを修正できますか? 何を編集すればよいですか?