2009-11-30 6 views

Répondre

12

Consultez la documentation Basic Types dans la documentation GLib. Essentiellement, c'est pour garantir que certains types existeront avec certaines sémantiques, quel que soit le compilateur C ou la plate-forme que vous utilisez. Les types que C garantit de toute façon sont typedef ed juste pour rendre tous les noms de types semblent uniformes.

+0

Donc la raison de transformer char en gchar est de le rendre plus joli? – Lucas

+4

D'une certaine manière, mais surtout parce que int peut ne pas être le même sur tous les systèmes, gint8 aura toujours 8 bits. – Dave

+7

Je suppose. Certains des types gtypes (discutablement) donnent une sémantique supplémentaire sur un type simple, mais je pense que le reste est juste pour la cohérence et la portabilité. Souvenez-vous également que GLib date de 1999, et qu'il existait déjà un grand nombre de types comme «uint64_t». –