Ragazzo triste
15-08-2009, 10:12
Ciao a tutti,
ho appena compilato questo semplice programma (non scritto da me),per scambiare i valori di 2 variabili,usando i puntatori.
Come potete vedere dall'output,il programma non raggiunge il proprio obiettivo : le variabili restano ai propri posti.Cosa c'è che non va ?
/* Programma che usa la funzione
swap per scambiare il valore di
due variabili ,con l'uso di puntatori */
void swap(int *, int *);
#include <stdio.h>
#include <stdlib.h>
main(){
int prima = 1, seconda = 2;
printf("Prima dello scambio\n");
printf("prima=%d Seconda=%d\n",prima, seconda);
swap(&prima,&seconda);
printf("Dopo lo scambio\n");
printf("prima=%d Seconda=%d\n",prima, seconda);
system("PAUSE");
}
void swap(int *a, int *b){
int appoggio = *a;
*a = *b;
*b = appoggio;
}
ho appena compilato questo semplice programma (non scritto da me),per scambiare i valori di 2 variabili,usando i puntatori.
Come potete vedere dall'output,il programma non raggiunge il proprio obiettivo : le variabili restano ai propri posti.Cosa c'è che non va ?
/* Programma che usa la funzione
swap per scambiare il valore di
due variabili ,con l'uso di puntatori */
void swap(int *, int *);
#include <stdio.h>
#include <stdlib.h>
main(){
int prima = 1, seconda = 2;
printf("Prima dello scambio\n");
printf("prima=%d Seconda=%d\n",prima, seconda);
swap(&prima,&seconda);
printf("Dopo lo scambio\n");
printf("prima=%d Seconda=%d\n",prima, seconda);
system("PAUSE");
}
void swap(int *a, int *b){
int appoggio = *a;
*a = *b;
*b = appoggio;
}