Salve a tutti, con ctypes vorrei richiamare una funzione C che ritorna **char. La funzione in causa assegna la memoria per le singole stringhe e per l'array stesso e lascia al chiamante l'onere di liberarla. Sebbene con ctypes riesca ad accedere ai singoli valori, non riesco ad accedere all'area di memoria puntate e di conseguenza non riesco a liberarla. Questo è quanto ho fatto fino ad ora:
def getlist(): envs = _mylib.getlist() ret = [] i = 0 env = envs[i] while env is not None: ret.append(env) i += 1 env = envs[i] # in realta' non sono sicuro di questa riga _free(envs) return ret Ho provato con ctypes.addressof, ma non sono riuscito a risolvere. Domanda correlata, come posso effettuare il debug della memoria? Quali strumenti usare? Quello che mi sarebbe veramente utile è poter utilizzare gdb, ma non credo che sia possibile. Grazie, m. _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python