-
- Может все просто - у тебя где-то в проекте отключена начальная инициализация переменных? Помню, что это как-то делалось через настройки - можно было оставить обычную инициализацию, инициализацию нулями или вообще без инициализации. - il-2(23.06.2019 08:13)
- Насколько я понимаю в С, битовые поля несовместимы с целыми независимо от количества бит. ИАР выдал бы ошибку. - VLLV(22.06.2019 08:13)
- Попробуйте так: Dingo(330 знак., 22.06.2019 07:06)
- Так и есть - указатель указывает куда не надо. - POV_(22.06.2019 12:02, )
- Откуда берётся Params? Надо думать, это структура типа TParams, но где она объявлена и как инициализирована? - йцукен(21.06.2019 22:52)
- В том же модуле в сишнике TParams Params, и в хедере extern TParams Params. - POV_(21.06.2019 23:18, )
- И не работает? А собираете сразу в один файл из всех *.с или сначала компилируете, а потом уже в один? - Dingo(22.06.2019 07:42, ссылка)
- В том же модуле в сишнике TParams Params, и в хедере extern TParams Params. - POV_(21.06.2019 23:18, )
- Уберите отовсюду typedef'ы - и всё у вас наладится :), или используйте их по назначению. TParams у вас - typedef, а не структура, какой адрес вы хотите поиметь, если сама структура у вас не определена, а определены только типы? Ксения(201 знак., 21.06.2019 21:01 - 21:12)
- Именно так всё и есть. Params объявлен как переменная TParams. Не написал я это - забыл или посчитал неважным. - POV_(21.06.2019 23:19, )
- Вообще синтаксически у него всё верно. Он берёт указатель на 16-битное значение и хочет с ним побитно поработать. Тут наверное глюк компилятора просто. - FDA(21.06.2019 22:39)
- Кейл51 - это лишь условно компилятор Цэ. Там есть документированные и не очень отклонения. Давно это было, всего и не упомню... - SciFi(21.06.2019 22:42)
- Но симулятор кейла всё верно кажет. С чего бы его же интерпретация в режиме отладки на железе считала иначе? - POV_(21.06.2019 23:21, )
- Тут два варианта. Либо разбираться с глюками кейла, либо накатить union с битовыми полями поверх Params. - FDA(22.06.2019 00:34)
- Если на uint??_t нормально будет инициализировать, то можно через битовые маски работать(а не битовые структуры). - Dingo(24.06.2019 09:55)
- Не, оставил исходный костыль - программно инициализирую указатели в том же модуле, где они и Params объявлены. - POV_(22.06.2019 13:46, )
- +1 - VLLV(22.06.2019 11:31)
- +1 - бомж(22.06.2019 10:26)
- Тут два варианта. Либо разбираться с глюками кейла, либо накатить union с битовыми полями поверх Params. - FDA(22.06.2019 00:34)
- Но симулятор кейла всё верно кажет. С чего бы его же интерпретация в режиме отладки на железе считала иначе? - POV_(21.06.2019 23:21, )
- Кейл51 - это лишь условно компилятор Цэ. Там есть документированные и не очень отклонения. Давно это было, всего и не упомню... - SciFi(21.06.2019 22:42)