Intercambiar números utilizando punteros en C++

C++C++Beginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderemos cómo intercambiar dos números utilizando punteros en C++. El programa intercambia dos números pasando sus direcciones a la función y utiliza punteros para apuntar a sus ubicaciones en la memoria.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL cpp(("C++")) -.-> cpp/BasicsGroup(["Basics"]) cpp(("C++")) -.-> cpp/FunctionsGroup(["Functions"]) cpp(("C++")) -.-> cpp/AdvancedConceptsGroup(["Advanced Concepts"]) cpp(("C++")) -.-> cpp/IOandFileHandlingGroup(["I/O and File Handling"]) cpp(("C++")) -.-> cpp/SyntaxandStyleGroup(["Syntax and Style"]) cpp/BasicsGroup -.-> cpp/variables("Variables") cpp/FunctionsGroup -.-> cpp/function_parameters("Function Parameters") cpp/AdvancedConceptsGroup -.-> cpp/pointers("Pointers") cpp/IOandFileHandlingGroup -.-> cpp/output("Output") cpp/IOandFileHandlingGroup -.-> cpp/user_input("User Input") cpp/SyntaxandStyleGroup -.-> cpp/code_formatting("Code Formatting") subgraph Lab Skills cpp/variables -.-> lab-96166{{"Intercambiar números utilizando punteros en C++"}} cpp/function_parameters -.-> lab-96166{{"Intercambiar números utilizando punteros en C++"}} cpp/pointers -.-> lab-96166{{"Intercambiar números utilizando punteros en C++"}} cpp/output -.-> lab-96166{{"Intercambiar números utilizando punteros en C++"}} cpp/user_input -.-> lab-96166{{"Intercambiar números utilizando punteros en C++"}} cpp/code_formatting -.-> lab-96166{{"Intercambiar números utilizando punteros en C++"}} end

Incluir archivos de encabezado y declarar función

Primero, incluimos los archivos de encabezado necesarios y declaramos la función swap que toma dos punteros enteros como argumentos.

#include <iostream>
using namespace std;

//Función para intercambiar 2 números
void swap(int *num1, int *num2);

Definir la función swap

Aquí, implementamos la función swap de la siguiente manera:

void swap(int *num1, int *num2) {
       int temp;
       //Copiar el valor de num1 a una variable temporal
       temp = *num1;

       //Copiar el valor de num2 a num1
       *num1 = *num2;

       //Copiar el valor de num1 almacenado en temp a num2
       *num2 = temp;
}

La función toma dos punteros enteros como argumentos y intercambia los valores a los que apuntan utilizando una variable temporal.

Ingresar dos números y llamar a la función swap

Declarar las variables num1 y num2 y utilizar cin para ingresar sus valores. Llamar a la función swap y pasar sus direcciones como argumentos.

int main() {
       int num1, num2;

       //Ingresando 2 números por parte del usuario
       cout<<"Ingrese el primer número : ";
       cin>>num1;
       cout<<"Ingrese el segundo número : ";
       cin>>num2;

       //Pasando las direcciones de num1 y num2
       swap(&num1, &num2);

Imprimir los números intercambiados

Imprimir los números intercambiados utilizando cout.

//Imprimiendo los valores intercambiados de num1 y num2
cout<<"Primer número : "<< num1 << endl;
cout<<"Segundo número: "<<num2 << endl;

Compilar y ejecutar el programa

Guarde el programa en el directorio ~/proyecto como main.cpp. Utilice el siguiente comando para compilar el código

g++ main.cpp -o main &&./main

Resumen

En este laboratorio, hemos aprendido cómo intercambiar dos números utilizando punteros en C++. Declaramos y definimos una función swap que intercambiaba los valores a los que apuntan dos punteros enteros y utilizamos cin y cout para obtener la entrada del usuario y mostrar la salida, respectivamente.