Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Длинные целые в IAR
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > IAR
JohnKorsh
Добрый день. Пушу в IAR. Мне необходимо использовать длинное целое число. IAR не понимает uint64_t, хотя в help про этот тип написано (приведены максимальные значения).
uint64_t Test = 0; // Ошибка - undeclared type.
Как грамотно использовать (скорее всего какой *.h подключить)?
scifi
Яр бывает разный. Например, у яра для стм8 64-разрядных типов нет.
Ну а если есть, то подключать надо <stdint.h>, как везде.
Obam
https://electronics.stackexchange.com/quest...-variable-64bit
Оно?

(: Пушить в IAR
JohnKorsh
Программа компилируется для MSP430F5528. long long не помогло.
Obam
Цитата(JohnKorsh @ Jul 5 2017, 13:31) *
Программа компилируется для MSP430F5528. long long не помогло.

Там ещё stdint.h предлагалось
scifi
Цитата(JohnKorsh @ Jul 5 2017, 12:31) *
Программа компилируется для MSP430F5528. long long не помогло.

Ну, значит у яра для мсп430 нет 64-разрядных типов. Что вполне ожидаемо, кстати.
JohnKorsh
Спасибо за stdint.h - с первого раза невнимательно читал. Помогло. О, счастье.
Obam
Цитата(JohnKorsh @ Jul 5 2017, 13:52) *
Спасибо за stdint.h - с первого раза невнимательно читал. Помогло. О, счастье.

А ведь IAR-ы пупок надрывают, "маны" для кого-то пишут
Нажмите для просмотра прикрепленного файла
scifi
Цитата(Obam @ Jul 5 2017, 13:02) *
А ведь IAR-ы пупок надрывают, "маны" для кого-то пишут

Там не сказано, что нет 64-разрядных типов. Более того, заглянул в мануал, там сказано, что такие типы есть. Почему у ТС не сработало "long long" - загадка. Может быть, галочки в опциях не так расставлены?
Obam
Дык, я и выделил куда копать…

В общефилософском разрезе: на 16-битной архитектуре, с 12-ю доступными РОНами, с ОЗУ в качестве операнда не реализовать 64-битную арифметику? А на чём тогда (;
k155la3
Цитата(scifi @ Jul 5 2017, 14:35) *
Там не сказано, что нет 64-разрядных типов. Более того, заглянул в мануал, там сказано, что такие типы есть. Почему у ТС не сработало "long long" - загадка. Может быть, галочки в опциях не так расставлены?

В опциях проекта MSP, возможно, выбраны набор библиотке CLIB а не DLIB.
Там в аннотации дается кратко отличия, что будет работать из ф-ий, а что нет.
В частности отличается функциональность printf.
Возможно также на Small модели памяти-данных этот тип не будет работать.
На Large / DLib long long int компилируется без доп. настроек

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.