Linux выпилил strncpy: шесть лет, 360 патчей и функция, которой 50 лет (phoronix.com)
strncpy убрали за «контринтуитивную семантику» вокруг NUL-терминатора и бессмысленное забивание нулями. Цифра «360 патчей» — это 360 использований, переписанных на безопасные вызовы, а не 360 багов.
Откуда она взялась: функцию написали, чтобы копировать 14-байтные имена файлов из ранних записей каталогов UNIX — дополненные нулями, но без терминатора. Для строк её не предназначали.
Войдите, чтобы сохранить