セクション 1. 章 4
single
ポインタの使用例
メニューを表示するにはスワイプしてください
変数を関数に渡すとき、基本的にはその値を渡しています。つまり、関数はデータのコピーを受け取ります。関数内で行われた変更は、元の変数には影響しません。
main.cpp
12345678910#include <iostream> void increment(int num) { num++; } int main() { int num = 5; increment(num); std::cout << "Original value: " << num << std::endl; }
ポインタを利用することで、関数が元の変数を変更できるようになります。これは、実際の値ではなくメモリアドレスを引数として渡すことで実現されます。
main.cpp
123456789101112#include <iostream> void increment(int* num) { (*num)++; } int main() { int num = 5; int* p_num = # increment(p_num); std::cout << "Original value: " << num << std::endl; }
注意
変数へのポインタを作成せずに、アドレス演算子を直接使用して変数を渡すことが可能。
タスク
スワイプしてコーディングを開始
ポインタを使用して、2つの整数変数の値を入れ替える関数を作成してください。
- 2つの整数へのポインタをパラメータとして受け取る関数
swapを作成します。 - 関数内で、一時変数を使って最初の変数の値を保存します。
- ポインタのデリファレンスを用いて、2番目の変数の値を1番目の変数に代入します。
- 一時変数の値をポインタのデリファレンスを使って2番目の変数に代入します。
main関数内で、2つの変数のアドレスを渡してswapを呼び出します。
解答
すべて明確でしたか?
フィードバックありがとうございます!
セクション 1. 章 4
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください