Для того, чтобы ваш код превратился посредством компиляции в рабочую программу, он должен пройти несколько важных преобразований. Они называются этапами трансляции. Подробнее о трансляции можно почитать в официальной документации вот здесь. В одну из фаз трансляции в работу включается препроцессор. Когда начинается его работа, он просматривает файл кода в поисках директив, оставленных программистом для него. После чего, препроцессор исполняет все директивы. В каждой программе с вводом и выводом...
Во многих языках программирования (в широком смысле) есть возможность вставить файл. Имеется в виду, что в каком-то месте указано имя файла командой вроде include, которая предписывает вставить в это место содержимое указанного файла. Это широко используется в Си и других языках GNU Compiler Collection. Есть такая команда и в Фортране, есть \input в ТеХ, и много где еще. Это не лучший способ организации кода, но иногда бывает полезен и, главное, до сих пор используется. Вим обладает средствами поиска...