2015-10-26 33 views
1

我想換用C語言編寫一個函數參數,這樣我可以在Python中使用痛飲包裝結構**(指向指針)與痛飲

我的問題是,它需要一個指向訪問指向結構的指針,而不是指向結構的指針,例如

int update_tracks(track_t **hash_tracks); 

,如果它是:

int update_tracks(track_t *hash_tracks); 

我也沒問題,因爲我可以創建參數,從蟒蛇調用該函數如下:

hash_tracks = track_t() 
n = update_tracks(hash_tracks) 

track_t是一個簡單的C結構包含一些整數,浮點數,數組等。

但我不知道如何獲得指向hash_tracks,我需要作爲第一個函數的參數(即我實際上試圖包裝)

我需要一個track_t **參數(不只是一個track_t *參數)的原因是,hash_tracks是一個哈希表(使用uthash庫),因此指向跟蹤表可以隨着函數在其實現中添加和移除track_t結構而改變。

我很難過如何從python調用這樣的函數。也許我需要在C中實現一些「輔助」功能或使用一些SWIG類型映射來實現它?

回答