Функция isempty
имеет не возвращаемый тип возврата. Таким образом, он должен вернуть значение. Например,
int isempty(st *s)
{
if (s->top==-1)
{
printf("it's empty");
}
else
{
printf("it's not empty");
}
return s->top==-1;
}
Вторая проблема заключается в том, что вы не инициализировали указатель на объект структуры
st *s;
Нет необходимости объявлять указатель. Вы можете написать
st s = { { 0 }, -1 };
и вызывать такие функции, как
push( &s );
isempty( &s );