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?