Un saluto a tutti i programmatori (o agli aspiranti tali )
Sto provando ad orientarmi tra i complicati meandri dell'uso di puntatori. In questo momento sto provando a realizzare una calcolatrice da riga di comando in notazione polacca.

Facendo delle prove generiche per provare il codice volta per volta, ottengo un errore di segmentation fault se provo ad eseguire questo codice

codice:
int main(int argc, char *argv[])
{
	while (--argc > 0)
	{
		if ( isdigit(*++argv))
			printf("numero %f\n", (double) *argv);
	}
}
Inoltre, poichè la calcolatrice polacca dovrebbe essere gestita come una pila, ho provato a scrivere queste due funzioni push e pop in questo modo.
codice:
#define MAX_OP 100
double stack[MAX_OP];
double *p = stack;

void push(double n)
{
	*p++ = n;
}

double pop(void)
{
	return *--p;
}
Sembra funzionare bene dopo svariate prove, ma volevo capire se è possibile migliorarlo in qualche modo.

Grazie mille a tutti per l'attenzione