Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Atribuindo Endereços a Ponteiros | Fundamentos de Ponteiros
Ponteiros e Referências em C++
Seção 1. Capítulo 2
single

single

bookAtribuindo Endereços a Ponteiros

Deslize para mostrar o menu

Ao trabalhar com ponteiros, a inicialização adequada é importante para garantir que eles apontem para locais de memória válidos e evitar comportamentos inesperados.

Operadores de endereço e de desreferência

Para atribuir um valor ao ponteiro, é necessário utilizar o operador de endereço (&) e, para acessar o valor do endereço de memória, utiliza-se o operador de desreferência.

  • &: operador de endereço, retorna o endereço de memória de seu operando;

  • *: operador de desreferência, retorna o valor armazenado no endereço de memória.

main.cpp

main.cpp

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

Utilizando o operador de endereço (&), podemos atribuir esses endereços aos ponteiros, criando uma ligação direta entre o ponteiro e a localização de memória para a qual ele aponta.

Tarefa

Deslize para começar a programar

Em um sistema bancário, cada cliente possui um saldo de conta. Transações como depósitos ou saques podem alterar esse saldo. No entanto, saques não podem tornar o saldo negativo. Implemente um programa que atualize e gerencie o saldo da conta utilizando ponteiros.

Você irá implementar uma função updateBalance que realiza a transação modificando o saldo por meio de um ponteiro.

  1. Dentro da função updateBalance, verifique se a transação é um saque que resultaria em saldo negativo:
    • Se amount for negativo e *p_balance + amount < 0, a transação não é permitida.
    • Retorne false nesse caso.
  2. Se a transação for permitida, atualize o saldo somando amount a *p_balance utilizando a desreferenciação do ponteiro.
  3. Retorne true para indicar uma transação bem-sucedida.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 2
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

some-alt