| |
|
 |
Ответов
|
Guest_Serg79_*
|
Jul 10 2007, 07:32
|
Guests

|
Вполне возможно, что Вы aesok и правы. После того, как я немного потправил код таким образом: Код items[(uint8_t)(j+1)] = temp; все заработало. Вот по этому я и сомневался: Цитата Хотя, я уже начинаю сомниваться, не в моей ли голове эта проблема, т.к. такой глюк у меня был и в предыдущих версиях GCC. А про это Цитата Индекс масива имеет тип unsigned int я не знал. Спасибо, что прояснили ситуацию. Как говориться век живи век учись. Еще раз спасибо, теперь все встало на свои места. Цитата(aesok @ Jul 10 2007, 10:42)  PS: И петензий мне не надо предьявлять что я должн понимать что не должен. Имя функции говорит только о ее имени, а выполняет функция то что вы написали. И если вы ниписали чуш, то и получите в результате чуш.
PSS: И вообще отладка это немного более сложный процес чем "раз 10 (десять) нажать на кнопку <F11>". Притензии я не кому не предъявляю. Мне почему то всегда казалось, что разобраться в функции языка 'C' которая состоит из шести строк довольно просто. Это же все таки не 'Perl' где в шести строчках кода можно закодировать целую программу на 'C'. Насчет десяти нажатий клавиши <F11>, так опять же мне кажется, что этого вполне достаточно что бы увидеть что данная функция начинает работать не так как от нее ожидается. Хотя, я могу и ошибаться.
|
|
|
|
|
|
|
|
Jul 10 2007, 11:18
|
Знающий
   
Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484

|
Цитата(Serg79 @ Jul 10 2007, 11:32)  Насчет десяти нажатий клавиши <F11>, так опять же мне кажется, что этого вполне достаточно что бы увидеть что данная функция начинает работать не так как от нее ожидается. Хотя, я могу и ошибаться. В моем понимании отладка - это ВЫЯСНЕНИЕ почему код работает именно так как он работает, а не так как ожидаеться. Анатолий.
|
|
|
|
|
|
|
|
Jul 10 2007, 11:30
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(aesok @ Jul 10 2007, 10:18)  В моем понимании отладка - это ВЫЯСНЕНИЕ почему код работает именно так как он работает, а не так как ожидается. Анатолий. Ну, эт у вас мистика какая-то, типа код сам знает, как он работает, а вы вот хотите это выяснить. Отладка - это получение кода, работающего именно так, как задумал автор, ни больше, ни меньше.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
|
|
|
Jul 10 2007, 11:40
|
Знающий
   
Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484

|
Цитата(=GM= @ Jul 10 2007, 15:30)  Ну, эт у вас мистика какая-то, типа код сам знает, как он работает, а вы вот хотите это выяснить. Код работает как он написан, а хотеть я могу совсем другого. Автор вопроса в этих двух строчках ХОТЕЛ одного и тогоже: items[j+1] = temp; // этот оператор не хочет работать items[++j] = temp; // а вот этот отлично работает Но они работали по разному, и не так как ХОТЕЛ автор, а так как этот код понял компилятор в соответствии со стандартом на язык С. Анатолий.
Сообщение отредактировал aesok - Jul 10 2007, 11:42
|
|
|
|
|
|
|
|
Jul 10 2007, 12:26
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(aesok @ Jul 10 2007, 10:40)  Код работает как он написан, а хотеть я могу совсем другого. Не так. Код написан ВАМИ, следовательно, ВЫ хотели, чтобы он работал так-то и так-то, но в силу ряда причин, ваш код работает не так. Ну выяснили вы, почему код работает неправильно, ну и что? Надо же его исправить и опять проверить, именно в этом заключается отладка. Поэтому так точнее: Отладка - это получение кода, работающего именно так, как задумал автор. Другими словами, ВЫЯВЛЕНИЕ ошибки и ИСПРАВЛЕНИЕ кода, чтобы он работал так, как ожидается АВТОРОМ.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
|
Сообщений в этой теме
krik сообщение об ошибке в GCC Jul 9 2007, 07:21 aesok Версия avr-gcc? Jul 9 2007, 09:30 krik Цитата(aesok @ Jul 9 2007, 13:30) Версия ... Jul 9 2007, 19:05  aesok Цитата(krik @ Jul 9 2007, 23:05) WinAVR ... Jul 9 2007, 19:21 Serg79 Я вот никак не пойму, баг это компилятора или нет.... Jul 10 2007, 05:16 aesok Код items[j+1] = temp; // этот оператор н... Jul 10 2007, 05:58 aesok Индекс масива имеет тип unsigned int.
Расмотрим с... Jul 10 2007, 06:42  jorikdima Цитата(aesok @ Jul 10 2007, 10:42) Индекс... Jul 10 2007, 07:20 Serg79 ЦитатаОбясните что вы ожидаете получить и что полу... Jul 10 2007, 06:34     aesok да мы про одно и тоже, только разными словами.
Ци... Jul 10 2007, 19:30
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|