Это на самом деле не связано с программированием, но больше связано с ОС.
В большинстве операционных систем файловая система имеет концепцию родительского каталога и текущего каталога.
Родительский каталог обычно используют нотацию ..
, в то время как текущий каталог использует нотацию .
.
Так что opendir(".")
сделает, чтобы открыть текущий каталог.
И как упоминалось в комментарии, «текущий» каталог не обязательно должен быть каталогом, в котором находится исполняемая программа. Это текущий рабочий каталог для процесса, который может отличаться. Это зависит от того, как и где была запущена программа, и от того, меняет ли программа свой рабочий каталог (чего нет в программе в вопросе).