我有一个.so
文件,该文件具有RFID读卡器的C函数,并且正在我的python
程序中调用C函数。
C函数类型是unsigned int get_card()
,具有unsigned int card
作为变量,并以unsigned int
格式返回值。
但是当我在python
程序中调用该C函数,并print
返回值时,我得到的是负值。
您能帮忙吗?
这是因为您的python代码“不知道”该值是unsigned int,因此,如果二进制数以1开头,例如“ 10”等于十进制2,则python会读取它十进制为“ -0”。因此,您需要在python中创建一个无符号的int变量,然后将返回值复制到新变量中,然后才能进行打印。希望对您有帮助