реклама на сайте
подробности

 
 
> sprntf не работает в IAR
SortoVaritu
сообщение Nov 4 2010, 15:24
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 4-11-10
Пользователь №: 60 647



Использую IAR 5.10
Не работает функция sprintf

при таком коде

char L[10]

sprintf(L,"СПРИНТФ");

в L записывается какая то ерунда. Причем в дебугере все нормально, а вот после прошивки в железо к сожалению результата нет.
Изучал форумы. Стэки закрутил побольше - все равно ничего не выходит.
В чем может быть проблема?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Nikkolaj
сообщение Nov 16 2010, 06:19
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 147
Регистрация: 25-09-08
Пользователь №: 40 467



Добрый день.
Я сейчас впервые попробовал использовать функцию sprintf ();
Текст самый простой:

char L[10];
sprintf (L, "787878");

При компиляции IAR выдаёт:

Warning[w6]: Type conflict for external/entry "sprintf", in module main against external/entry in module ?sprintf; types have different type attributes

Подскажите пожалуйста, что я делаю не правильно.
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Nov 16 2010, 09:45
Сообщение #3


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



QUOTE (Nikkolaj @ Nov 16 2010, 08:19) *
Warning[w6]: Type conflict for external/entry "sprintf", in module main against external/entry in module ?sprintf; types have different type attributes

Очевидно, что атрибуты типов данных разные. sprintf ожидает указатель на данные, размещённые в ОЗУ, а ему скорее всего передаётся указатель на flash если в настройках проекта установлена опция держать строки во flash. Читайте тему с самого начала.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 10:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.01386 секунд с 7
ELECTRONIX ©2004-2016