現在僕は龍神録プログラミングの館を参考にしつつ、ゲームを作っているのですが
8章の内容を読んだところ、PadInput & mulの論理積のビット演算(?)等は理解できたのですが
input_pad_or_key関数の引数がポインタになっているのが理解できませんでした。
他のサイトなどでもよく見かけるのですが、関数の引数をポインタにするのは何の意味があるのですか?
僕は「他の関数内で宣言された変数等を参照する必要がある時」と解釈しているのですが間違っていますか?
この解釈が当たっていたとして、何故pad_t padは関数外(グローバルスコープ)で宣言されているのにこうする必要があるのですか?
ちなみに基礎的なポインタの仕組みは一応ですが理解しています。(具体的な使い方とかはまだ知らないんですけど)
とても知識の乏しい質問かもしれませんが、回答いただけるとありがたいです。
8章のinput_pad_or_key関数について
Re:8章のinput_pad_or_key関数について
input_pad_or_key関数は
「引数1と引数2のうち大きい方を引数1に代入する」
関数です。
では、引数1をint *型ではなくint型にしてみてください。
もし、引数1<引数2が成り立つとして、その関数を抜けた後に
引数1 = 引数2となっているでしょうか?
なぜこうなるか理解をしていないと、ポインタの初歩から躓いていると思われます。
もう一度、参考サイトなり、本なりを復習してみてください。
「引数1と引数2のうち大きい方を引数1に代入する」
関数です。
では、引数1をint *型ではなくint型にしてみてください。
もし、引数1<引数2が成り立つとして、その関数を抜けた後に
引数1 = 引数2となっているでしょうか?
なぜこうなるか理解をしていないと、ポインタの初歩から躓いていると思われます。
もう一度、参考サイトなり、本なりを復習してみてください。
Re:8章のinput_pad_or_key関数について
回答ありがとうございます。
回答を参考にし、調べ直したところ
どうやら、ポインタどころか関数の仕組みに対して致命的な勘違いをしていた事が発覚しました。
もう一回基礎を勉強しなおします。
回答を参考にし、調べ直したところ
どうやら、ポインタどころか関数の仕組みに対して致命的な勘違いをしていた事が発覚しました。
もう一回基礎を勉強しなおします。