私のコードはStackNodeアイテムをスタックにプッシュすることになっています。しかし、スタックがいっぱいになると、私はもう関数を呼び出せず、nullを返しますが、nullを返しません!私はこれが何を意味するのかわからないんだけど error: returning 'void *' from a function with incompatible result type 'Stack' (aka 'struct Stack') return NULL;
関数はCでnullを返すことはできません
:ここ
Stack push(Stack stk,int data)
{
struct StackNode *top = stk.top;
struct StackNode *node = malloc(sizeof(struct StackNode));
if(node == NULL)
{
printf("Stack is full\n");
return NULL;
}
node->data = data;
node->nextNode = top;
stk.top = node;
stk.count++;
return stk;
}
は私が取得していますエラーです。どうすれば修正できますか? Stackに相当するNULLは何ですか?
エラーメッセージには何が表示されますか。 'NULL'は' Stack'型の値ですか? –
スタックのヌル相当が何であるか分かりません – ashadeka
相当品はありません。 –