при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
А что содержит переменная объявленая но которой не присвоено значение ?Telek писал(а):т.е. когда явно идет сравнение двух signed char, то все равно болт...Код: Выделить всё
signed char zero; signed char menu_V_position; zero=0; menu_V_position-- ; if (menu_V_position<zero) menu_V_position=2;
по умолчанию все переменные обнуляться должны автоматически при инициализации программы, если нет принудительной инициализации.tych писал(а):Это zero=0; вы сделали. А вторую переменную обнулить ?
Дивная бредятина ! Там может быть что угодно.ARV писал(а):по умолчанию все переменные обнуляться должны автоматически при инициализации программы, если нет принудительной инициализации.tych писал(а):Это zero=0; вы сделали. А вторую переменную обнулить ?
Это я привел условно. чтобы показать, что я тоже сравниваю с нулем.tych писал(а):А что содержит переменная объявленая но которой не присвоено значение ?Telek писал(а):т.е. когда явно идет сравнение двух signed char, то все равно болт...Код: Выделить всё
signed char zero; signed char menu_V_position; zero=0; menu_V_position-- ; if (menu_V_position<zero) menu_V_position=2;
Это zero=0; вы сделали.
А вторую переменную обнулить пробовали ?
"на лицо" былобы если бы вы проект приложили и с файлами симулятора.Telek писал(а): Т.е. на лицо
Скачайте нормальный CVAVR у меня на дом. страничке и будет вам счастье и удача.Telek писал(а): явное неприятие signed char в if'e
Позже приложу. ...а на вашей домашней странице он чем нормальней, чем на сайте производителя или на казусе?tych писал(а):"на лицо" былобы если бы вы проект приложили и с файлами симулятора.Telek писал(а): Т.е. на лицоСкачайте нормальный CVAVR у меня на дом. страничке и будет вам счастье и удача.Telek писал(а): явное неприятие signed char в if'e
Между прочим прошу обратить внимание на название закладки в приведенной картинке. Если настраиваете проект наполовину, то не кричите что глюки и прочее. Софтом пользоваться нужно научиться, а потом о глюках кричать.Telek писал(а):А смысл, если я явно указал тип переменных? чтобы потом глюки в сторонних библиотеках ловить?
Эта галка стоит по умолчанию. Настройки по умолчанию я не трогаю. Эта галка говорит как воспринимать тип чар, если явно не указана знаковость. Я явно указываю знаковоть.(как вообще эта галка может влиять на явно указанный тип? кроме как переделать явно неуказанные чары? переделка всех чаров, в которых не указана знаковость мне не нужна, т.к. наличие этой галки подразумевает что вместо unsigned char я могу написать просто char) Что в моих действиях не логично?mr.Kirill писал(а):Между прочим прошу обратить внимание на название закладки в приведенной картинке. Если настраиваете проект наполовину, то не кричите что глюки и прочее. Софтом пользоваться нужно научиться, а потом о глюках кричать.Telek писал(а):А смысл, если я явно указал тип переменных? чтобы потом глюки в сторонних библиотеках ловить?
Глюки сторонних библиотек? Если они по нормам написаны то никаких глюков не будет.
Проверяйте и отчет в студию. Иначе на кой ляд Вы вообще взялись за это?
ИМХО снимайте галку и везде явно объявляйте тип char'a
Который вы придумали ?ARV писал(а): это стандарт.
да считать то можно что угодно.ARV писал(а): она считается имеющей значение 0
Так же и в компиляторах которые я перечислил выше. в CVAVR раздел справки "Data Types"ARV писал(а): WinAVR всегда следует тому, что написано в программе: даже если этот самый переключатель включен на беззнаковый char, а в программе написано signed char - эта переменная будет знаковой. что, собственно говоря, и должно быть.
Код: Выделить всё
char 8 -128 to 127
unsigned char 8 0 to 255
signed char 8 -128 to 127Наверно к новому году и проект выложите ! Да ? Т.е. в январе 2009 разговор станет наконец предметным.Telek писал(а): Я явно указываю знаковоть.
А тож ! Курс таки ... для ньюби.ARV писал(а):tych, ваш совет указывать значения явно - безусловно следует признать правильным.
Я догадался ! и потому привел вам ссылку на книгу основоположников где написано что "мусор может быть в переменной которой не присвоено значение"ARV писал(а):tych, не я придумал Си
Дак вы покажите этот стандарт ! Чтоб и другие могли ему следлвать. Покажите стандарт где написано что нули будут в переменных которым значение не присвоено.ARV писал(а):и тем более его стандарты - я всего лишь им следую
Я Ж НЕ ЭКСТРАСЕНС !!! Вот жду когда товаришь приложит архив с проектом и с прошивкой !ARV писал(а): почему у товарища траблы с тем, что объявленная signed char переменная не анализируется на значение меньше нуля?
Вы меня еще в образе ШЛАНГА не видели !ARV писал(а): не пытайтесь прикинуться дубом - вам не идет...
Слава богу что СПЕЦИАЛИСТЫ и НА РАЗНЫХ форумах имеют мнение о нём.ARV писал(а): а мнение специалистов (судя по разным форумам) об этом произведении пока что далеко от восхищения...
видимо, лишь потому и жив пока...tych писал(а):Вы меня еще в образе ШЛАНГА не видели !![]()
(выделение - мое)INT NWHITE = 0;
INT NOTHER = 0;
INT NDIGIT[10] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ;
MAIN() /* COUNT DIGITS, WHITE SPACE, OTHERS */
(
INT C, I;
...
)
Эти инициализации фактически не нужны, так как все присваиваемые значения равны нулю, но хороший стиль - сделать их явными.