Ich muss einen 24-Bit-Datentyp definieren. Ich verwende char[3]
, um den Typ darzustellen. Kann ich typedef char[3]
zu type24
? Ich habe es in einem Codebeispiel versucht. Ich habe typedef char[3] type24;
meine Header-Datei eingefügt. Der Compiler hat sich nicht darüber beschwert. Aber als ich eine Funktion void foo(type24 val) {}
in meiner C-Datei definiert habe, hat sie sich beschwert. Ich möchte in der Lage sein, Funktionen wie type24_to_int32(type24 val)
anstelle von zu definieren type24_to_int32(char value[3])
.
type24 foo
, was würde die Größen, Typen und Bedeutungen vonfoo
,*foo
,**foo
,&foo
, und&&foo
? Haben sich die Bedeutung und Rechtmäßigkeit solcher Ausdrücke im Laufe der Jahre geändert?