codice:
#include <stdio.h>
#include <stdlib.h>
#include "stack.h"

int main(int argc, char * argv[])
{
   Stack * s = Create(); 
   int i = 0;
   while(i != 10)
   {
      push(s, i);
      i++;
   }
   i = 0;
   int x[10];
   while(i != 10)
   {
      pop(s, &x[i]);
      i++;
   }
   i = 0;
   for(i = 0; i < 10; i++)
      printf("Pop => %d \n", x[i]);
   char sc;
   scanf("%s", &sc);
   return 0;
}

#include <malloc.h>

typedef struct
{
	int vet[11];
	int sp;
}Stack;

Stack * Create()
{
	Stack * v = malloc(sizeof(Stack));
	v->sp = 0;
	return v;
}

void push(Stack * p, int value)
{
	p->vet[p->sp++] = value;
}

void pop(Stack * p, int * value)
{
	if(p->sp == 0)
		return;	
	value = (int *) p->vet[p->sp--];
}
Mi stampa numeri a caso
Why????