Лимит времени выполнения, скажем, полное имя пути, может зависеть от версии операционной системы.
Если вы хотите, чтобы ваша программа могла работать в старой системе с более короткими ограничениями имени пути (скажем, 128 символов), вы не хотели бы, чтобы она была искусственно ограничена в более новых системах с гораздо большими ограничениями (скажем, 4096) символов.
Единственный способ получить наилучшее поведение - это сделать системный вызов, чтобы определить текущий предел, или адаптировать ваш код так, чтобы он мог справляться с более длинными строками, если он их встречает, и правильно сообщать о системных ошибках, если слишком длинные пути передаются в более старые системы.
Как говорит PJ, вам все равно нужна некоторая гибкость, если у вас подключены различные файловые системы, которые налагают свои собственные ограничения, которые вы также должны корректно обрабатывать, но они часто находятся внутри ограничения, наложенного на всю систему.
В некоторой степени, если вы используете языки высокого уровня с динамическими длинами строк и т. Д., Вы изолированы от этих ограничений времени выполнения, но полезно понимать, что они существуют.