Почему strdup считается злом

Я видел несколько плакатов о том, чтоstrdup это зло Есть ли консенсус по этому вопросу? Я'мы использовали его без чувства вины и не видим причин, почему это хуже, чем использование /.mallocmemcpy

Единственное, что я думаю, может заработатьstrdup репутация заключается в том, что вызывающие абоненты могут злоупотреблять ею (например, не понимают, что им нужно освободить возвращаемую память; попробуйте strcat до конца strdup 'строчка). Но тогда Malloc 'Строки ed не свободны от возможности неправильного использования.

Спасибо за ответы и извинения тем, кто считает вопрос бесполезным (голосует за закрытие). Суммируя ответы, кажется, что нет общего ощущения, чтоstrdup это само по себе зло, но общее мнение, что оно, как и многие другие части C, может использоваться ненадлежащим образом или небезопасно.

Здесь нет 'правильный' ответь действительно, но ради принятия я принял @nneoneo 's ответ - это могло бы быть @R .. 'ответ.

Ответы на вопрос(6)

Ваш ответ на вопрос