Родился в селе Личадеево, ныне Ардатовского муниципального округа Нижегородской области, в семье служащего. С 1940 года служил в Красной Армии. Окончил Ворошиловградскую военно-авиационную школу пилотов (1942 г.). Участник Великой Отечественной войны с октября 1942 года. Командир звена 74-го гвардейского штурмового авиационного полка 1-й гвардейской штурмовой авиационной дивизии 1-й воздушной армии 3-го Белорусского фронта, гвардии старший лейтенант Макаров совершил 191 успешный боевой вылет, нанеся врагу значительный урон в живой силе и боевой технике. Звание Героя Советского Союза присвоено 23 февраля 1945 года. После окончания войны продолжил службу в армии. Окончил Высшие офицерские летно-тактические курсы (1945 г.), Военно-воздушную академию (1952 г.). С 1960 года полковник Макаров – в запасе. Жил и работал в городе Ростове-на-Дону. Награды: ордена Ленина (23.02.1945), Красного Знамени (06.03.1943, 03.02.1944, 07.10.1944, 29.04.1945), Богдана Хмельницкого 3-й степени (24.03.1945), Александра Невского (03.12.1944), Отечественной войны 1-й степени (20.05.1943, 06.04.1985), Красной Звезды (27.07.1943), медали.