Препроцессор и его макросы в C (Си) • Live coding

 

Откуда на нашу голову свалился препроцессор, почему в нём аж два языка программирования и что такое макросы в C (Си) на самом деле. Начнём с коварной замены NULL на что попало. А потом узнаем, кто придумал популярные хаки (спойлер: всем миром выдумали, нас не ждали), зачем нужен #, что делать со скобками и почему ничего не работает так, как мы себе вообразили. Ну и несколько хаков, конечно, куда ж без них.