hola que tal quisiera que alguien me pudiera explicar un programa ya que en verdad que no entiendo el funcionamiento del programa , encontré la solución un amigo me ayudo pero aunque me explico aun tengo dudas espero me puedan ayudar .
El programa tenía que tener 2 valores en dos variables y con apuntadores se tenía que invertir el valor de estos les dejo el código :
#include <iostream>
using namespace std;
int main (){
int x=3,y=2,*p1=NULL,*p2=NULL;
cout << "El valor de x es: "<< x << "\n";
cout << "El valor de y es: "<< y << "\n\n\n";
p1=&y;
p2=&x;
*p1 += *p2;
*p2 = *p1-*p2;
*p1 -= *p2;
cout << "El valor de x es: "<< x << "\n";
cout << "El valor de y es "<< y << "\n\n\n";
return 0;
}
Al ejecutar el programa si invierte los valores , lo que no entiendo es el algoritmo que hace esto , siendo está la parte del código:
*p1 += *p2;
*p2 = *p1-*p2;
*p1 -= *p2;
espero que me puedan explicar :C , saludos