Скажите пожалуйста, в embedded используется C++ или только чистый Си?
Например, программирование микроконтроллеров Atmel, Cortex.
Конечно, есть трансляторы хоть с Python, но что обычно используют - чистый Си плюс какие-то хедеры для выбранного микроконтроллера, или же C++ тоже используется?
Всё зависит от доступных ресурсов. Если важен каждый байт и каждый тик, то C/ASM. Если ресурсов с запасом, то хоть Python. В производстве реальных устройств экономят на всём, в том числе и на контроллерах. Соответственно, используется в основном C, что бы уместить весь код.
В более менее навороченых устройствах используют связку из ASM/C (для real time кусков) и C++ для более высокоуровневой логики и GUI. Вопрос экономии байтов возникает только в миниатюрных ULV девайсах, т.к. в бОльших устройствах без жесткого бюджета по питанию камни изначально выбираются с запасом, из стратегических соображений. Экономия нескольких десятков центов даже при стотысячных партиях - ничто по сравнению с расходами на усложнение разработки и последующей поддержки.
Мало памяти - только Си и никакого динамического выделения
Много памяти - С++ и STL. много - это мегабайты =)
И на Си и на Си++ можно написать программу одинаково.