我正在使用一个C代码库,它使用一个返回guint的API函数(https://developer.gnome.org/glib/stable/glib-Hash-Tables.html#g-hash-table-size)。我需要将它作为int传递给下游。我想知道是否有办法做到这一点?
我搜索了文档和谷歌,但却空了。
答案 0 :(得分:1)
这些typedef的存在让我感到困惑。检查glib/gtypes.h
:
typedef char gchar;
typedef short gshort;
typedef long glong;
typedef int gint;
typedef gint gboolean;
typedef unsigned char guchar;
typedef unsigned short gushort;
typedef unsigned long gulong;
typedef unsigned int guint;
因此unsigned int
和guint
之间不需要转换,它们的类型相同。
有关在unsigned int
和int
之间进行转换的常规警告适用。