Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Keil: sscanf() не хочет работать с float...
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
abcdefg
Вот такие дела.... sad.gif Даже пример из хелпа и тот не работает. Пробовал с разными модификаторами (%f %e) - одна фигня.

Может у кого работает? help.gif

Keil последний (mdk302a), контроллер lpc2138 (хотя от этого ничего не зависит)
aaarrr
Хоть бы привели код и описание проблемы.
abcdefg
Цитата(aaarrr @ Sep 24 2006, 17:22) *
Хоть бы привели код и описание проблемы.


Ну уж не знаю насколько подробнее...

ПРИМЕР ИЗ ХЕЛПА (help) ДЛЯ ФУНКЦИИ SSCANF НЕ РАБОТАЕТ С FLOAT-ЧИСЛАМИ.

int res;
float f;

res = sscanf ("12.5", "%f", &f);

После выполнения res == 0, f ==0
abcdefg
Я офигиваю.... Очередная бага Keil'a!

См. пример из хелпа по sscanf ()

Если до вызова функции любой переменной (f, g) присвоить произвольное начальное значение, то функция работает!!! В противном случае, как описано выше
AlexandrY
Какой компилер то?
Или это часть загадки biggrin.gif
abcdefg
Цитата(AlexandrY @ Sep 24 2006, 20:53) *
Какой компилер то?
Или это часть загадки biggrin.gif


само собой keil'овский (2.54a)
VAI
Цитата
Keil последний (mdk302a), контроллер lpc2138 (хотя от этого ничего не зависит)

Цитата
само собой keil'овский (2.54a)

Так на самом деле что?
Теперь у себя в проекте смотрим
"Project->Components, Environment and Book" в средней вкладке "Folders/Extensions" смотрим, какой из 3-х возможных компиляторов у Вас выбран - где стоит птичка в "Select ARM Development Tools".
Кейловская среда позволяет использовать 3 различных компилятора:
1. oт ARM
2. от Кейла
3. Гнутый
abcdefg
Цитата(VAI @ Sep 25 2006, 12:50) *
Цитата
Keil последний (mdk302a), контроллер lpc2138 (хотя от этого ничего не зависит)

Цитата
само собой keil'овский (2.54a)

Так на самом деле что?
Теперь у себя в проекте смотрим
"Project->Components, Environment and Book" в средней вкладке "Folders/Extensions" смотрим, какой из 3-х возможных компиляторов у Вас выбран - где стоит птичка в "Select ARM Development Tools".
Кейловская среда позволяет использовать 3 различных компилятора:
1. oт ARM
2. от Кейла
3. Гнутый


"Ну вы, блин, даете" (с)

"Keil'овский" = п.2 "от Кейла"

P.S. может конечно я и туплю, но может лучше будем вчитываться?!
Alex03
Мож с региональными настройками связано?
Попробуйте точку на запятую поменять?
VAI
а зачем Вам кейловский компилятор, который double не поддерживает, при наличии самого крутого компилятора от ARM в этом пакете?
У меня с компилятором RV работает. В региональных настройках стоит точка. Ставлю всегда при установки системы, т.к. уже подобным образом накалывался.
а проверять с кейловским компилятором, извините, честно некогда.
abcdefg
Цитата(VAI @ Sep 25 2006, 17:33) *
а зачем Вам кейловский компилятор, который double не поддерживает, при наличии самого крутого компилятора от ARM в этом пакете?



1. странно, но тип данных double есть...

2. надо было "по-быстренькому" вставить блок в проект.

3. вряд ли это зависит от региональных настроек, т.к. проблема, на мой взгляд, в инициализации компилятором переменных типа float.
VAI
Цитата
1. странно, но тип данных double есть...


в кейловской поставке нету Caldp.lib.
про это здесь http://www.keil.com/support/docs/3191.htm
abcdefg
Цитата(VAI @ Oct 10 2006, 17:46) *
в кейловской поставке нету Caldp.lib.
про это здесь http://www.keil.com/support/docs/3191.htm


Мда, забавно... А как же они жили до 3-й версии (когда в пакет включили компилятор realview) ? Это файл поставлялся за очень отдельные деньги?!

Сходил в продукт-селект на кейловском сайте, "CA compiler" обозван "legacy" - т.е. его развивать не будут? Все переходят на RealView??
VAI
Он застрял на версии 2.42, по-моему. А дальше добавился RV и вышла версия 2.50.
А Caldp.lib я в свое время так найти и не смог.
PS
Keil славился хорошим дебугером, вот к нему добавили лучший компилятор. ИМХО.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.