Muszę zdefiniować 24-bitowy typ danych. Używam char[3]
do reprezentowania typu. Czy mogę napisać char[3]
na maszynie type24
? Próbowałem w próbce kodu. I umieścić typedef char[3] type24;
w moim pliku nagłówka. Kompilator nie narzekał na to. Ale kiedy zdefiniowałem funkcję void foo(type24 val) {}
w moim pliku C, narzekała. Chciałbym móc definiować funkcje takie jak type24_to_int32(type24 val)
zamiast type24_to_int32(char value[3])
.
type24 foo
, co byłoby rozmiary, typy i znaczeńfoo
,*foo
,**foo
,&foo
, i&&foo
? Czy znaczenia i legalność takich wyrażeń zmieniły się na przestrzeni lat?