タグ

pointerに関するTacoSのブックマーク (2)

  • Cの宣言は英語順で読もう、という話 - K.Maebashi's はてなブログ

    Cでのポインタの読み方 上記のページ、現時点ではてなブックマークが1241ついています。同趣旨のことを私は1998年に以下のページに書きました。 配列とポインタの完全制覇 こちらのはてブ数は212…… きいいっ! 悔しい!! などという話はさておき。 上記ページに関連してだと思うのですが、Twitterで@kinabaさんが以下のようにつぶやかれておりました。 『という方針のCの入門記事』ということであれば、WebではないのでURLは貼れませんが、たとえば柴田望洋先生の「秘伝 C言語問答 ポインタ編」*1には以下の記述があります(p.22)。 ここで、下のように考えると、int x;の部分が*ptrに相当すると考えられますね。 int x ; int *ptr ;――*ptrはint型変数であると言っているように解釈できますね。 で、実のところこれを意識した上で、私は「C言語 ポインタ完全

    Cの宣言は英語順で読もう、という話 - K.Maebashi's はてなブログ
  • Cでのポインタの読み方

    Cでのポインタの読み方 Cのポインタの読み方は、ルールを知らないと摩訶不思議です。 ルールを覚えれば、 int (*p[5])[3]; char (*(*fp)(void))(int); なんてのも解読する事ができます。 大事な前程 ポインタを読む際には、「英語で読む」必要があります。 「え~、英語~」 と思う方もいるかもしれませんが、逆に日語で読む方が大変です。 基ルール ルール 後置演算子が優先。 関数の() 配列の[] 前置はあとで。 要は、「後ろに何かあったら、後ろが優先」です。 演算子の英語での読み方 * pointer to ... () function returning ... [] array of ... Lesson 1 まず、演算子が単独で出てくる場合です。 Lesson 1-1 pointer to ... int *p; これは、まずpを見ましょう。 i

  • 1