変数のポインタ操作に関することで、どうもおかしい部分がありました。
そして、変数宣言がC#と違うし、変数の扱いも違うので、どうもおかしいと判断して、別のサイトに、ほぼ同じ内容のコードがC#で丁寧に解説されている記事があり、助かりました。
恐らく、初心者は、惑わされて挫折すると思います。
挫折する前に、似たコードがないか検索してみましょう!
手掛かりに関する情報は豊富です。
C,C++,Java,C#
思えば、この4つの言語の習熟は必須だと痛感しました。
質問はC#なのに、回答はC++でされていて、それでその質問は解決しているので、「いつになったら、ここまで到達できるのだろう」と深いため息をつきながら、逃れることの出来ない険しい道を登ることに決めました。
そもそも、Cの拡張としてC++が生まれて、Javaは柔軟性とメモリ処理と管理を簡便にした更なる発展形です。そして、Javaの概念を応用して生まれたのがC#です。
ところが、C#が出た当初は、WindowsOSオンリーの言語だったので、ほとんど普及しませんでした。皆、「どうせすぐ消えるだろ?」と思っていたのではないでしょうか。それ程、特異な存在だったのです。
しかし、最近では、C#による開発も増えています。
Microsoftが提供する「dotNET」の概念は、他のプラットホームであるLinuxやmacOS向けに提供しない限り、動作しないので、JavaVMのように互換性がないため、動くはずがありません。ですが、2年ほど前に「dotNET Core」というものをMSがLinux向けに正式リリースしたことで、Ubuntu等のLinuxでコードを修正してコンパイルし直したものは制限はあるものの動作するようになりました。Linuxで動作するということは、MacOS XをLinuxベースで開発したAppleが提供する現在のmacOSでも、原理的には動作するはずです。無責任なようですが、現状は知りません。何故ならば、興味がないからです。AppleはMacをどこへ向かわせているのでしょうか。(ちょっと検索したらdotNET Coreのバージョンがあがっていましt。緩やかですがw)
MacOS9が一番充実していた時期だと思います。この頃のMacは好きでした。Windowsマシンがサブだった程です。OS Xになって、おかしな方向へ顧客を誘導するので、選択肢がない訳ではない顧客は、Windowsが嫌いな人が大多数を占めているので、無償のLinuxへと移行しています。それかPCを利用せず、タブレットやスマホで済ませているかです。
そもそも意地を張り通していたAppleが、コスパの悪いPower G5の代わりに、Intel CPUをMacに搭載した頃からおかしくなったと思えて仕方がありません。Macユーザーが試したことは、ブートキャンプという仮想化機能を使って、興味本位でWindowsXPを動作させたことです。
お高くとまったAppleのMacに未来はないと思います。
最近では、ChromeBookというものまで登場しています。
時代は読めないものですね。
本当は、出来ることならば、「結果として煩雑に拡張しまくったという経緯を経て現在に至るC++」は、事情を知っているだけに避けて通りたいです。
今回、遭遇したことから、C++の一端に触れる切っ掛けが出来たので、有難いと考えます。
C++は、一番険しい道だと思いますが、頑張って習熟します。