- ベストアンサー
->記号って?
超初心者の質問です。 サンプルプログラムを見ていて free(pexdata->data); という記述がありました。 ここでの"->"ってどういう呼び方で何なのでしょう? 機能の呼び名がわかれば調べ方がわかりますので、そこからは調べようかと思っている次第です。 聞きたい物の例としてずばり、「関数」とか「クラス」とか呼び名を教えてください。ちょっとした説明も入れていただけると尚Goodですが。 どなたかご教授ください。お願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
そうですね… pexdataが正しい構造体または共用体のポインタ式であるとした場合、 1.pexdata->data 2.(*pexdata).data 上記の二つは同じ意味です。 つまり、構造体または共用体を指すポインタから直接その構造体または共用体のメンバにアクセスするための演算子です。 ->演算子の->の部分の読み方は#3の回答どおり、特に定義されてはいません。 いくつか解説ページをあたってみると 演算子 -> http://www.wakuhoku.ac.jp/~kanayama/C/03/node135.html 間接参照「->」 http://www.komonet.ne.jp/~c/chap33.htm アロー演算子 http://wisdom.sakura.ne.jp/programming/c/c36.html http://www9.plala.or.jp/sgwr-t/c/sec15-3.html 矢印記号(->) http://www.kumei.ne.jp/c_lang/intro/no_28.htm …みごとにばらばらですね。
その他の回答 (4)
呼称が無いのも困りますよね。 プログラミング言語C第2版のp.248に >矢印(-と>で表わす) と書かれている場所があります。(原著は所有していませんが、「arrow」と書かれていると想像できます) 一般的には「やじるし」または「アロー」で通用すると思います。さらに「演算子」を付け加えれば、誤解されにくくなります。 調べるなら「構造体 間接参照」などの方がいいかもしれません。
- jacta
- ベストアンサー率26% (845/3158)
->演算子(-> operator)です。 「JIS X3010:2003 6.5.2.3 構造体及び共用体のメンバ」に明記されています。 なおC++では、矢印->、演算子->、->演算子といった表記が混在しています。
- KoHal
- ベストアンサー率60% (110/181)
アロー演算子 POINTER->MEMBER は (*POINTER).MEMBER と同等。 といいますか、まず「ポインタとは何か?」をしっかり勉強しましょう。
- ymasan
- ベストアンサー率45% (16/35)
正しい呼び名があるかは分かりませんが, 検索の際は「構造体 ポインタ」でやってみてください. そのまんま「構造体のポインタ」ですので・・・