指针在 Python 中并不常见,var 声明类型也不常见。我正在尝试在 Python 中执行此操作。
C++:
...a function
flt32 f;
int32 sign, exp, man, *tms;
tms = (int *) &f;
...(operations)
*tms = sign | exp | man;
return (f);
如您所见,tms
指向f
数据,但只是(顺便说一句,此功能完美运行)的int
一部分。float
使用 ctypes 我可以在 Python 中使用指针:
from ctypes import *
f = c_float(12.3)
tms = pointer(f) # tms should be: tms = c_int32(value)
print tms.contents.value #12.3000001907
这里的问题是tms
立即变成 的类型f
,所以两个变量都是 float (tms
应该是tms = c_int32(a_value))
。
可以使用与Python 中变量的int
值匹配的指针吗?float