24ビットのデータ型を定義する必要がありますchar[3]。型を表すために使用しています。することができます私のtypedef char[3]にtype24?コードサンプルで試してみました。typedef char[3] type24;ヘッダーファイルに入れました。コンパイラはそれについて文句を言わなかった。しかしvoid foo(type24 val) {}、Cファイルで関数を定義すると、文句を言われました。type24_to_int32(type24 val)ではなくのような関数を定義できるようにしたいと思いますtype24_to_int32(char value[3])。
type24 foo、何のサイズ、タイプ、および意味だろうfoo、*foo、**foo、&foo、およびを&&foo?そのような表現の意味と合法性は長年にわたって変化しましたか?