Это не гарантируется быть самым низким, и зависит от реализации (1) . Однако в общем случае подпрограмма, назначающая дескрипторы открытого файла, использует метод, который дает вам первое открытое включение. Вполне возможно, что сразу после освобождения нескольких более низких дескрипторов вы получите более высокий дескриптор, чем вы могли бы ожидать.
Однако единственная причина, по которой я могу это знать, - это функция select, которая ускоряется, если вы передаете ей самый высокий дескриптор файла, который вы должны проверить.
(1) Обратите внимание, что те реализации, которые следуют стандарту IEEE, гарантируют самый низкий неиспользуемый дескриптор для файлов, но это может не относиться к сокетам. Не каждая реализация соответствует стандарту IEEE для open (), поэтому, если вы пишете переносимое программное обеспечение, лучше не зависеть от него.