После непродолжительного штудирования языка С, благо он достаточно простой и его стандартная либа совсем небольшая, анон рогом упрется в незнание "сюпрайз погромист" старика Assembler, без знания которого не то что с процом и переферией напрямую не поработать, а и вообще быть в полном неведении, что за магия происходит за ширмой языковых конструкций С, отсюда вылезают ноги все возможных багов и тормозов, на казалось бы компилируемом языке, ну и как тут не сказать что примерно 90% синтаксиса С это прямая калька с инструкций Assembler, те же побитовые операции, флаги, указатели, регистры, циклы, ветвления, функции, переменные, массивы и тот же goto, мало того терминология С состоит целиком и полностью из терминов Assembler, при этом в С она расматривается в двух словах типа "ну это там" и все(((
Ещё есть проблема что много где учат работать с С++ словно это Си с классами, а про современные функции почти не упоминают, к примеру про constexpr, который может заменить заметную часть макросов
Понимаешь ли в чем дело, у плюсов нет единой парадигмы, никто не запрещает фигачить в стиле Си + STL, или на чистом ООП как в Qt/POCO, или на шаблонах и потоках как в бусте... и все это ты должен уметь, тупо без вариантов, но и Assembler должен знать на отлично ибо вставки на асме повсюду если софт более менее производительный... и да компилятор не спасает со всеми его супер оптимизациями