Powiel możliwe:
Why does glib redefine types?Dlaczego lepiej jest używać typów danych Glib (np. `Gint` zamiast` int`)?
W + 2,0 tutorialu GTK, mogę czytać here następujące oświadczenie o typach danych:
Istnieje kilka rzeczy, które prawdopodobnie zauważyłem w poprzednich przykładach, które wymagają wyjaśnienia. Widoki gint, gchar, itp. Są typami odpowiednio do int i char, które są częścią systemu GLib. Robi się to, aby ominąć tę paskudną zależność od rozmiaru prostych typów danych podczas wykonywania obliczeń.
Nie rozumiem ostatniej części tego wyjaśnienia. Dlaczego lepiej jest używać typów danych Glib?
Oto co mam rozumieć ... gint i gchar na przykład są po prostu bezużyteczne dla przenośności. Tylko gint32 i wszystkie typy danych o stałych rozmiarach dodane przez Glib były interesujące przed standardem C99, ponieważ zapewniają, że zmienne mają minimalną wymaganą wielkość. Czy mam rację ? – remjg
Możesz mieć rację. Chociaż możliwe jest, że ludzie polegali na np. gint mieć określony rozmiar, lub przynajmniej 32 bity lub coś podobnego. Chodzi o to, że łatwiej jest zmienić pojedynczy typedef, aby spełnić takie wymagania, zamiast zmieniać każde miejsce w kodzie, w którym używasz ints. – Michael
Masz rację, 'gint' i' gchar' nie są zdefiniowane jako określone rozmiary, więc nie ma powodu, aby z nich korzystać. Zobacz także komentarz: http://stackoverflow.com/questions/2800310/converting-an-array-of-characters-to-a-const-gchar/2800318#2800318 – ptomato