codice:
#include <stdio.h>

void scambia(int **x, int **y);

int main()
{
  int a=5, b=10;
  int *p, *q;
  p = &a;
  q = &b;


  printf("a:%d  b:%d \n", *p, *q);
  scambia(&p,&q);
   printf("a:%d  b:%d \n", *p, *q);

  getch();
  return 0;
}


void scambia(int **x, int **y){
int *temp;
temp = *x;
*x = *y;
*y = temp;
}
il programma funziona correttamente ma sbaglio l'interpretazione
mi spiegate perchè è sbagliato il mio ragionamento?
nella funzione scambia x e p sono puntatori a puntatori di interi
rispettivamente x punta il puntatore p e y punta il puntatore q
se io scambio i valori di questi ultimi puntatori(x e y) come viene fatto
nel programma...non dovrei scambiare fra loro i puntatori a puntatori?
perchè di fatto scambio i puntatori a interi?