(немного предыстории: у меня нет опыта работы с lldb или python, и я не часто над ними работаю, но в настоящее время мне нужно сделать несколько базовых сценариев для отладки программы iphone)
В настоящее время я остановлен на точке останова в стороне от функции и хочу проверить значение массива, к которому был получен доступ внутри этой функции
Этот массив объявлен как
Float32 my_array[128];
и имеет глобальный охват. Я могу просмотреть массив с помощью команды печати, но я хотел бы сделать скрипт на python, чтобы иметь больше контроля над форматированием вывода и, возможно, в дальнейшем отобразить элементы массива в виде графика, используя matplolib позже.
Я смотрю на пример кода Python , приведенный в этом вопросе , и, используя указанный там Python, я убедился, что могу просматривать локальные переменные в этой функции (где в данный момент я остановлен в точке останова). ). Например, если я заменил 'base' в base=frame.FindVariable('base')
на мою локальную переменную 'k' (локальная переменная не является массивом),
base=frame.FindVariable('k')
тогда print base
Я вижу значение k. Однако, если я попробую это,
base=frame.FindVariable('my_array')
и сделай print base
это даст мне No value
. Как я могу написать команду Python, чтобы получить значения любой переменной в настоящее время в области видимости? Предпочтительно это работает для нормальных переменных (int, float), массивов и указателей, но если нет, то поиск значений массивов в данный момент более важен.