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