【发布时间】:2015-10-12 03:12:26
【问题描述】:
我有一个计算值并返回它的 python 方法。 值为
CalcData = 3941269503L.
它只有 32 位。然而,这被隐式转换为 long(后缀为 L),当我在其他应用程序的 COM 中访问此方法时,我得到 Python int 太大而无法转换为 C long 错误。我什至尝试将其类型转换为 int,但没有运气
【问题讨论】:
我有一个计算值并返回它的 python 方法。 值为
CalcData = 3941269503L.
它只有 32 位。然而,这被隐式转换为 long(后缀为 L),当我在其他应用程序的 COM 中访问此方法时,我得到 Python int 太大而无法转换为 C long 错误。我什至尝试将其类型转换为 int,但没有运气
【问题讨论】:
“long”C 类型是有符号的,因此它可以存储的最大正值是 2,147,483,647。错误确实正确,不合适。
在常量上尝试“unsigned long”和“UL”后缀。
【讨论】: