это выделение памяти. r[i] это по факту обращение к ячейке памяти по адресу r со смещением i. Четвертая строчка назначает переменной r стартовый адрес и резервирует необходимое количество ячеек памяти, начиная с этого адреса. Если этого не сделать программа попытается обратится к области памяти, которая принадлежит непонятно кому. Вероятнее всего эта фигня скомпилится, но при запуске выдаст ошибку доступа к памяти