[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]

Отправлено Romario 03 июня 2002 г. 21:42
В ответ на: а что значит не работают... отправлено Romario 03 июня 2002 г. 21:22

компилятор не должен следить за соответсвие типов в строке модификаторов и типом переменной (числа) аргумента. При компиляции, компилер закидывает в стек (при выводе напрмер числа) число разрядностью той, которой является тип переменной, а код printf знает о разрядности переменной толко после разбора строки модификаторов (par_str)...Соответственно, (в зависимости от реализации функции) увеличивает на считанную величину локальный стэк поинтер при доставании из стека выводимых чисел. Глюк может дать о себе знать если нужно вывести большей 1 переменной. Вобчем ничего умного - прописные истины.


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

Ответы



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

E-mail: info@telesys.ru