Перейти к содержанию
    

Длинные целые в IAR

Добрый день. Пушу в IAR. Мне необходимо использовать длинное целое число. IAR не понимает uint64_t, хотя в help про этот тип написано (приведены максимальные значения).

uint64_t Test = 0; // Ошибка - undeclared type.

Как грамотно использовать (скорее всего какой *.h подключить)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Яр бывает разный. Например, у яра для стм8 64-разрядных типов нет.

Ну а если есть, то подключать надо <stdint.h>, как везде.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

https://electronics.stackexchange.com/quest...-variable-64bit

Оно?

 

(: Пушить в IAR

Изменено пользователем Obam

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Программа компилируется для MSP430F5528. long long не помогло.

Там ещё stdint.h предлагалось

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Программа компилируется для MSP430F5528. long long не помогло.

Ну, значит у яра для мсп430 нет 64-разрядных типов. Что вполне ожидаемо, кстати.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за stdint.h - с первого раза невнимательно читал. Помогло. О, счастье.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за stdint.h - с первого раза невнимательно читал. Помогло. О, счастье.

А ведь IAR-ы пупок надрывают, "маны" для кого-то пишут

post-83663-1499248868_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А ведь IAR-ы пупок надрывают, "маны" для кого-то пишут

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дык, я и выделил куда копать…

 

В общефилософском разрезе: на 16-битной архитектуре, с 12-ю доступными РОНами, с ОЗУ в качестве операнда не реализовать 64-битную арифметику? А на чём тогда (;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

В опциях проекта MSP, возможно, выбраны набор библиотке CLIB а не DLIB.

Там в аннотации дается кратко отличия, что будет работать из ф-ий, а что нет.

В частности отличается функциональность printf.

Возможно также на Small модели памяти-данных этот тип не будет работать.

На Large / DLib long long int компилируется без доп. настроек

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...