タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

C言語に関するhiro211のブックマーク (2)

  • やり直しC言語:複雑な宣言の読み方

    C言語は宣言文が非常に読みにくいことで有名で、後発のGo言語はこれを批判して宣言の構文を変えています。私もずっと読むのが苦手だったのですが、私の頭が悪いのではなく、C言語の仕様がヘン、ということらしい。 今まで飽きるほどこの手の解説は書かれてきてるわけですが、自分なりにまとめないと覚えた気がしないので、あえてまとめておきます。ここに書いてある内容は、「C言語ポインタ完全制覇」に詳しく書いてあります。 型の派生 C言語では、int, char, floatなどの基型から、配列やポインタを派生していくことができます。対象を並べたものが配列で、対象を指し示すのがポインタです。 配列やポインタからも配列やポインタを派生できるので、派生パターンは無限に存在します。 int int の配列 int の配列 の配列 ... int へのポインタ int へのポインタ へのポインタ ... int への

    やり直しC言語:複雑な宣言の読み方
  • Cで二重typedefを避ける - Humanity

    今日id:mattnさんのブログで前見たハックを実際に使う場面があった。 apr.h typedef int uid_t; perl.h typedef long uid_t; もちろんこのヘッダを同時に読み込むとエラーになるんですが、こういう場合に私がよく使う手として #define uid_t _uid_t #include <apr.h> #undef uid_t #include <perl.h>てな具合に前の宣言を逃してやって、後の宣言を有効に出来る。 Big Sky :: mod_psgiをWindowsポーティングした。 で、実際使ったのはこんなソース。 #include "alloc-list.h" #include "util.h" // I want to see the definition of struct List_tag, // But I don't wan

    Cで二重typedefを避ける - Humanity
    hiro211
    hiro211 2015/04/17
    お世話になりました
  • 1