Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Asignación de Direcciones a Punteros | Fundamentos de Punteros
Punteros y Referencias en C++
Sección 1. Capítulo 2
single

single

bookAsignación de Direcciones a Punteros

Desliza para mostrar el menú

Al trabajar con punteros, la inicialización adecuada es importante para asegurar que apunten a ubicaciones de memoria válidas y prevenir comportamientos inesperados.

Operadores de dirección y desreferenciación

Para asignar un valor al puntero se debe utilizar el operador de dirección (&) y para acceder al valor de la dirección de memoria se debe utilizar el operador de desreferenciación.

  • &: operador de dirección, devuelve la dirección de memoria de su operando;

  • *: operador de desreferenciación, devuelve el valor almacenado en la dirección de memoria.

main.cpp

main.cpp

copy
12345678
#include <iostream> int main() { int variable = 10; std::cout << &variable << std::endl; std::cout << *(&variable) << std::endl; }

Utilizando el operador de dirección (&), podemos asignar estas direcciones a los punteros, creando un enlace directo entre el puntero y la ubicación de memoria a la que apunta.

Tarea

Desliza para comenzar a programar

En un sistema bancario, cada cliente tiene un saldo de cuenta. Las transacciones como depósitos o retiros pueden modificar este saldo. Sin embargo, los retiros no pueden hacer que el saldo sea negativo. Escriba un programa que actualice y gestione el saldo de la cuenta utilizando punteros.

Implementará una función updateBalance que realiza la transacción modificando el saldo a través de un puntero.

  1. Dentro de la función updateBalance, verifique si la transacción es un retiro que resultaría en un saldo negativo:
    • Si amount es negativo y *p_balance + amount < 0, la transacción no está permitida.
    • En este caso, devuelva false.
  2. Si la transacción está permitida, actualice el saldo sumando amount a *p_balance usando desreferenciación de puntero.
  3. Devuelva true para indicar una transacción exitosa.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 2
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

some-alt