реклама на сайте
подробности

 
 
> Как отлаживать AVR с JTAGICE MK2?, не видит переменные дебаггер
roland07
сообщение Jun 2 2011, 09:02
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 11-03-08
Пользователь №: 35 801



Написал такую конструкцию:

for (int k=0;k<10;k++)
func(k)


Встал дебаггером на цикл и жму F10 для пошаговой отладки... При этом открываю watch и пытаюсь смотреть переменную k. Ее дебаггер не видит и пишет что переменнаяы вне зоны доступа...Почему так получается?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 1)
Непомнящий Евген...
сообщение Jun 2 2011, 09:52
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Оптимизация. Может быть func встроена и k вообще нету. Может быть k лежит в регистре и студия ее не видит.

Можете понизить уровень оптимизации или посмотреть асм. Еще можно написать volatile int k, это позволит увидеть переменную в дебагере, но добавит накладные расходы на обращение к ней. Подходит как временная мера. Есть еще прагмы, которые локально изменяют уровень оптимизации в пределах функции.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 15:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01344 секунд с 7
ELECTRONIX ©2004-2016