2009-11-30 11 views

Odpowiedz

12

Zapoznaj się z Basic Types w dokumentacji GLib. Zasadniczo ma to zagwarantować, że pewne typy będą istniały z pewną semantyką, niezależnie od tego, który kompilator C lub platformę używasz. Typy, które mimo to gwarantują, to: typedef ed tylko po to, aby wszystkie nazwy typów wyglądały jednolicie.

+0

Więc powód, aby przekształcić char w gchar jest tak, aby wyglądał ładniej? – Lucas

+4

W pewnym sensie, ale głównie dlatego, że int na przykład może nie być takie samo na wszystkich systemach, gint8 zawsze będzie mieć 8 bitów. – Dave

+7

Chyba. Niektóre gpsy (prawdopodobnie) dają dodatkową semantykę nad prostym typem, ale myślę, że reszta to tylko konsekwencja i przenośność. Pamiętaj też, że GLib pochodzi z 1999 roku, wyprzedzając powszechną dostępność typów takich jak 'uint64_t', dlatego też przetasują własne. –

Powiązane problemy