配列でスタックを実装しようとしています! プログラムを実行するたびに正常に実行されますが、 null 文字が無視されるため、デフォルトで有効になっているという警告が表示されます
この警告はどういう意味ですか?..何が間違っていますか?
私のコードは次のとおりです。
#include<stdio.h>
#include<stdlib.h>
# define MAX 10
int top=-1;
int arr[MAX];
void push(int item)
{
if(top==MAX-1)
{
printf("OOps stack overflow:\n");
exit(1);
}
top=top+1;
arr[top]=item;
}//warning
int popStack()
{
if(top==0)
{
printf("Stack already empty:\n");
exit(1);
}
int x=arr[top];
top=top-1;
return x;
}
void display()
{
int i;
for(i=top;i>=0;i--)
{
printf("%d ",arr[i]);
}
return;
}
int peek()
{
if(top==-1)
{
printf("\nEmpty stack");
exit(1);
}
return arr[top];
}
int main()
{
int i,value;
printf(" \n1. Push to stack");
printf(" \n2. Pop from Stack");
printf(" \n3. Display data of Stack");
printf(" \n4. Display Top");
printf(" \n5. Quit\n");
while(1)
{
printf(" \nChoose Option: ");
scanf("%d",&i);
switch(i)
{
case 1:
{
int value;
printf("\nEnter a value to push into Stack: ");
scanf("%d",&value);
push(value);
break;
}
case 2:
{
int p=popStack();
printf("Element popped out is:%d\n",p);
break;
}
case 3:
{
printf("The elements are:\n");
display();
break;
}
case 4:
{
int p=peek();
printf("The top position is: %d\n",p);
break;
}
case 5:
{
exit(0);
}
default:
{
printf("\nwrong choice for operation");
}
}
}
return 0;
}//warning
Dev C++ IDE を使用しています。