2016-08-08 24 views

回答

1

byref用於(快速)傳遞到C級功能;如果您需要在Python層使用指針,請使用pointer(很慢,但可以在Python中訪問);爲指針類型,取消引用與索引(因爲這是一個單值,它是[0]):

def t(n): 
    print(n[0]) 
    # Or to get back the c_int without converting to Python int: 
    # print(n.contents) 

t(pointer(c_int(5))) 

如果你只是想通過內部的Python的c_int不過,所有c_int s爲參考,所以你可以只這樣做:

def t(n): 
    print(n.value) 

t(c_int(5)) 

而且從n.value分配或閱讀會改變調用者的c_int