QUOTE (demiurg_spb @ Oct 24 2016, 14:29)

я hu и hhu использую по мере необходимости. На AVR вроде как был профит от этого.
Откуда он может взяться? Переменная приводится к (unsigned) int принудительно, на это мы повлиять не можем. Дальше работа с ней идет как с int. значение ее от приведения поменяться не могло. В чем смысл дополнительного принудительного обратного приведения внутри printf и какой выигрыш от этого можно плучить? Могу предположить, что если мы хотим вывести только младший байт или слово от int, тогда можно не накладывать маску перед передачей параметра в printf, но это настолько редкий случай, что городить ради этого поддержку дополнительных флагов... Не могу пока понять такой логики.
QUOTE (demiurg_spb @ Oct 24 2016, 14:29)

Ну а если наоборот - в прошивке ни одного double нет, лишь одни float))) (типично для кортекса и около того)
Нет в жизни совершенства

QUOTE (scifi @ Oct 24 2016, 14:38)

Можно предположить, что это сделано для симметрии с scanf, а там это нужная фича.
Правдоподобно. Там значение передается по указателю, приведений не происходит.