[an error occurred while processing this directive] [an error occurred while processing this directive]
Ответ: Иными словами . . .
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено I_Andr 03 июня 2002 г. 23:52
В ответ на: иными словами... отправлено Romario 03 июня 2002 г. 21:42

Он закидывает в качестве параметров вначале указатель на строку форматирования, потом если есть, спецификатор ширины или точности, и далее сами значения аргументов, но дело в том, что он отводит, например, под спецификатор ширины 2 байта, а, если Вы передаете тип char, то он берет следующий байт из старшего байта первого аргумента.
Да и вообще, не работает и такая конструкция:

sprintf(s, "%8.*d", 2, var);

а такая работает

sprintf(s, "%8.*d", (int)2, var);

Дело в том, что IARовский компилятор все это кушает элементарно

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru