Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ ポインタへのアドレスの代入 | ポインタの基礎
C++ポインタと参照
セクション 1.  2
single

single

bookポインタへのアドレスの代入

メニューを表示するにはスワイプしてください

ポインタを扱う際には、適切な初期化が重要であり、有効なメモリアドレスを指すようにすることで予期しない動作を防ぐことができます。

アドレス演算子と間接参照演算子

ポインタに値を代入するには、アドレス演算子&)を使用し、メモリアドレスの値にアクセスするには間接参照演算子を使用します。

  • &: アドレス演算子、オペランドのメモリアドレスを返します。

  • *: 間接参照演算子、メモリアドレスに格納されているを返します。

main.cpp

main.cpp

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

アドレス演算子&)を使用することで、これらのアドレスをポインタに代入し、ポインタとその指し示すメモリ領域との直接的な関連付けが可能となる。

タスク

スワイプしてコーディングを開始

銀行システムでは、各顧客が口座残高を持っています。入金や出金などの取引によって、この残高が変動します。ただし、出金によって残高がマイナスになることは許されません。ポインタを使用して口座残高を更新・管理するプログラムを作成してください。

updateBalance 関数を実装し、ポインタを介して残高を変更することで取引を実行します。

  1. updateBalance 関数内で、出金によって残高がマイナスになるかどうかを確認します:
    • amount が負で、かつ *p_balance + amount < 0 の場合、その取引は許可されません。
    • この場合は false を返します。
  2. 取引が許可される場合、ポインタのデリファレンスを使って *p_balance に amount を加算し、残高を更新します。
  3. 取引が成功したことを示すために true を返します。

解答

Switch to desktop実践的な練習のためにデスクトップに切り替える下記のオプションのいずれかを利用して、現在の場所から続行する
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  2
single

single

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

some-alt