Tengo que definir un tipo de datos de 24 bits. Estoy usando char[3]para representar el tipo. ¿Puedo escribir def char[3]a type24? Lo probé en una muestra de código. Puse typedef char[3] type24;en mi archivo de encabezado. El compilador no se quejó de ello. Pero cuando definí una función void foo(type24 val) {}en mi archivo C, se quejó. Me gustaría poder definir funciones como en type24_to_int32(type24 val)lugar de type24_to_int32(char value[3]).
type24 foo, cuáles serían los tamaños, tipos y significados defoo,*foo,**foo,&foo, y&&foo? ¿Han cambiado los significados y la legalidad de tales expresiones a lo largo de los años?