プロが教える店舗&オフィスのセキュリティ対策術

超初心者の質問です。
サンプルプログラムを見ていて
free(pexdata->data);
という記述がありました。

ここでの"->"ってどういう呼び方で何なのでしょう?
機能の呼び名がわかれば調べ方がわかりますので、そこからは調べようかと思っている次第です。

聞きたい物の例としてずばり、「関数」とか「クラス」とか呼び名を教えてください。ちょっとした説明も入れていただけると尚Goodですが。

どなたかご教授ください。お願いします。

A 回答 (5件)

そうですね…



pexdataが正しい構造体または共用体のポインタ式であるとした場合、

1.pexdata->data
2.(*pexdata).data

上記の二つは同じ意味です。

つまり、構造体または共用体を指すポインタから直接その構造体または共用体のメンバにアクセスするための演算子です。

->演算子の->の部分の読み方は#3の回答どおり、特に定義されてはいません。

いくつか解説ページをあたってみると
演算子 ->
http://www.wakuhoku.ac.jp/~kanayama/C/03/node135 …

間接参照「->」
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

…みごとにばらばらですね。
    • good
    • 1

呼称が無いのも困りますよね。


プログラミング言語C第2版のp.248に

>矢印(-と>で表わす)

と書かれている場所があります。(原著は所有していませんが、「arrow」と書かれていると想像できます)

一般的には「やじるし」または「アロー」で通用すると思います。さらに「演算子」を付け加えれば、誤解されにくくなります。

調べるなら「構造体 間接参照」などの方がいいかもしれません。
    • good
    • 0

->演算子(-> operator)です。


「JIS X3010:2003 6.5.2.3 構造体及び共用体のメンバ」に明記されています。

なおC++では、矢印->、演算子->、->演算子といった表記が混在しています。
    • good
    • 1

アロー演算子



POINTER->MEMBER は (*POINTER).MEMBER と同等。
といいますか、まず「ポインタとは何か?」をしっかり勉強しましょう。
    • good
    • 0

正しい呼び名があるかは分かりませんが,


検索の際は「構造体 ポインタ」でやってみてください.
そのまんま「構造体のポインタ」ですので・・・
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!