Oracle Solaris Studio 12.2: C ユーザーガイド

6.11.1 型

ISO は C の型を、関数、オブジェクト、および不完全の 3 つに区分しました。関数型の定義は明白です。オブジェクト型は、サイズが不明なオブジェクトを除く、そのほかすべてのものを示します。ANSI/ISO C 規格は、明示されるオブジェクトのサイズが既知でなければならないことを指定するために、「オブジェクト型」を使用します。しかし、void 以外の不完全な型もオブジェクトを指すことは十分に理解してください。

不完全な型には、void、不特定長の配列、および不特定内容の構造体と共用体の 3 つの種類しかありません。型 void は、完成させることができない不完全な型であるという点でほかの 2 つとは異なります。そして、特別な関数の戻り型とパラメータ型として機能します。