我正在使用C api从sqlite3数据库中读取数据。 sqlite3_column_int64返回一个sqlite3_int64对象。如何将其转换为长?
答案 0 :(得分:2)
您应该使用stdint.h中定义的标准整数类型。然后,您可以使用int64_t并知道在每个平台上它将是64位宽。
然后你可以将sqlite3_int64转换为int64_t,你就可以了。
答案 1 :(得分:0)
C中的long通常是32位,而您正在查看sqlite中的64位整数。只要您使用C,就可以使用long long类型。
以下是您可以参考的内容:
http://home.att.net/~jackklein/c/inttypes.html#long_long
我会尝试将sqlite3_int64解引用为long long int,并通过执行sizeof(long long)来查看它是否有效
编辑:我发现sqlite_int64的typedef也可以作为参考: