私はCを学ぼうとしているので、いくつかのソースコードを読んでみました。
は、しかし、私はこれが意味するかもしれないもの見当がつかない:引数を持つ関数としての配列?
static const char*(*const functab[])(void)={
ram,date
};
最初の部分、関数であるように思われるようstatic const char*
が、大丈夫です、static
は、それが唯一であることを意味すべきである(タイプvoid
の引数を持ちます)このファイルに表示されており、const char*
は、値を変更することはできないが、アドレスは変更できることを意味するはずです。
しかし、それは(*const functab[])
含むfunctab呼ばconstの配列がある代わりに、関数名の
static const char * date(void);
static const char * ram(void);
の場合と同様に、その場合には、それは、関数名以下の最後の部分の後に意味がありません。アドレス?
これは関数ramとdateを含む何らかのラッピング関数ですか?配列を宣言するいくつかの代替方法?
これは役立つかもしれませんします。http:// cdecl.org/。 – paulotorrens
@paulotorrensいいえ、そのサイトはかなりばかです。 OPの例で完全に細かいコードを試してみると、「構文エラー」が発生します。私は彼らがcdecl.orgのソースコードで構文エラーを参照していると仮定します... – Lundin
cdecl.orgは静的キーワードを認識しません。なんて可哀想な。 – Lundin